Php 在选择查询循环中插入查询
我已经创建了下面的函数,其中包括几个mysql查询,这似乎造成了一个问题。原因当我运行此函数时,它返回以下错误: 错误消息:命令不同步;现在无法运行此命令 我试着加入下一个结果,但没有任何区别Php 在选择查询循环中插入查询,php,mysql,Php,Mysql,我已经创建了下面的函数,其中包括几个mysql查询,这似乎造成了一个问题。原因当我运行此函数时,它返回以下错误: 错误消息:命令不同步;现在无法运行此命令 我试着加入下一个结果,但没有任何区别 function retrievePlayerTweets(){ global $con; $query = $con->prepare("Select players.fullname, players.twitter_user, team.id as teamId FROM pl
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);
}
}
}
}
如果命令不同步;您现在不能在客户端代码中运行此命令,您正在以错误的顺序调用客户端函数 例如,如果您正在使用mysql\u use\u result,并在调用mysql\u free\u result之前尝试执行一个新查询,则可能会发生这种情况。如果您尝试执行两个返回数据的查询,而不在其间调用mysql\u use\u result或mysql\u store\u result,也可能发生这种情况
只需删除while循环并使用$query->num_rows>0是否可以回答是,但不确定我需要做什么才能正确调用它,而不是在$query->fetch时执行,将$query->fetch的结果保存在变量中,然后循环i如何循环它?我不能真正使用foreach语句,因为值存储在bind_结果的变量中?