首页 > 后端开发 > php教程 > mysqli 的多sql语句执行有关问题

mysqli 的多sql语句执行有关问题

WBOY
发布: 2016-06-13 11:07:33
原创
939 人浏览过

mysqli 的多sql语句执行问题

<?php<br />	//对象创建<br />	$mysqli = new mysqli('localhost', 'root', 'nagiosxi','hrsystem');<br />	//连接是否出错<br />	if($mysqli->connect_error)<br />	{<br />		die('connect database error'.mysqli_connect_error());<br />	}<br />	$sql = "insert into login (user, pass, email, type) values ('dengchao1', md5('dengchao123'), [email&#160;protected]', 0);";<br />	$sql .= "insert into login (user1, pass, email, type) values ('dengchao1', md5('dengchao123'), [email&#160;protected]', 0)";<br />	$res = $mysqli->multi_query($sql);<br />	if($res && $mysqli->affected_rows > 0)<br />	{<br />		echo "insert ok <br />rows: ".$mysqli->affected_rows;<br />	}<br />	else<br />	{<br />		//$mysqli->close();<br />		die('insert error <br />'.$mysqli->error.$mysqli->close());<br />	}<br />	if(!is_bool($res))<br />	{<br />		$res->free();<br />	}<br /><br />	$sql = "select * from login";<br />	$res = $mysqli->query($sql);<br />        echo $mysqli->error."<br />";<br />	if($res)<br />	{<br />		while($row = $res->fetch_row())<br />		{<br />			foreach($row as $key => $val)<br />			{<br />				echo "--$val";<br />			}<br />			echo "<br />";<br />		}<br />	}<br />	if(!is_bool($res))<br />	{<br />		$res->free();<br />	}<br />	$mysqli->close();<br />?>
登录后复制

为啥会报错:Commands out of sync; you can't run this command now
 这句报错,对应的查询语句是
$sql = "select * from login";
$res = $mysqli->query($sql);

非常不解,请答案,没百度到。
------解决方案--------------------
先把multi_query的结果集释放了,再进行查询

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板