douchilian1009 2015-05-29 11:45
浏览 132

在select查询循环中插入查询

I've created below function which include several mysql queries, which seem to create an issue. Cause when I run this function it returns following error:

Errormessage: Commands out of sync; you can't run this command now

I've tried to include next_result(), but does not do any difference?

function retrievePlayerTweets(){
    global $con;
    $query = $con->prepare("Select players.fullname, players.twitter_user, team.id as teamId FROM players, team WHERE players.teamId = team.id");
    $query->execute();
    $query->bind_result($fullname, $twitter_user, $teamId);

    while ($query->fetch()) {

        foreach(retrieveUserTweets($twitter_user) as $twitterData) {
            $id = $twitterData['id_str'];
            $text = $twitterData['text'];
            $name = $twitterData['user']['name'];
            $dateString = $twitterData['created_at'];
            $favoriteCount = $twitterData['favorite_count'];
            $date = date('Y-m-d H:i:s', strtotime($dateString));

            if ($insert_tweet = $con->prepare("INSERT IGNORE INTO tweets (`fullname`, `username`, `text`, `created`, `teamId`, `twitterId`, `favoriteCount`) VALUES (?, ?, ?, ?, ?, ?, ?)")) {

                $insert_tweet->bind_param("ssssisi", $name, $twitter_user, $text, $date, $teamId, $id, $favoriteCount);
                $insert_tweet->execute();
                $con->next_result();

            } else {
                die("Errormessage: ". $con->error);
            }
        }
    }
}
  • 写回答

1条回答 默认 最新

  • dragon_9000 2015-05-29 11:55
    关注

    If you get Commands out of sync; you can't run this command now in your client code, you are calling client functions in the wrong order.

    This can happen, for example, if you are using mysql_use_result() and try to execute a new query before you have called mysql_free_result(). It can also happen if you try to execute two queries that return data without calling mysql_use_result() or mysql_store_result() in between.

    https://dev.mysql.com/doc/refman/5.0/en/commands-out-of-sync.html

    评论

报告相同问题?