在php中执行多个查询时出错
嗨,我在php文件中做一些查询在php中执行多个查询时出错,php,mysql,Php,Mysql,嗨,我在php文件中做一些查询 <?php include_once('Query.Class.php'); @session_start(); $idPlayer = $_SESSION['ID_PLAYER']; $obj = new Query(); $playerData = $obj->getPlayerData($idPlayer); ?> <?php echo "<a hre
<?php
include_once('Query.Class.php');
@session_start();
$idPlayer = $_SESSION['ID_PLAYER'];
$obj = new Query();
$playerData = $obj->getPlayerData($idPlayer);
?>
<?php
echo "<a href=profile.php?id=".$playerData['ID_PLAYER'].">".$playerData['USERNAME']."</a>";?></h1>
<?php
$playerMoney = $obj->getPlayerMoney($idPlayer);
for($i = 1; $i <= count($playerMoney); $i++){
echo"
<tr>
<td width='20' align='left'>".$playerMoney[$i]['CURENCY_NAME']."</td>
<td width='10'>:</td>
<td width='70' align='left'>".$playerMoney[$i]['CURENCY_AMMOUNT']."</td>
</tr>";
}
?>
<?php
$playerInventory = $obj->getPlayerInventory($idPlayer);
for($i = 1; $i <= count($playerInventory); $i++){
echo"
<tr>
<td width='20' align='left'>".$playerInventory[$i]['ITEMS_NAME']."</td>
<td width='10'>:</td>
<td width='70' align='left'>".$playerInventory[$i]['QUANTITY']."</td>
</tr>";
}
有什么帮助吗?您的money sql查询返回FALSE,因此最好在运行
mysql\u fetch\u array
之前执行此操作,这样您就知道没有任何结果:
if($result === FALSE) {
die(mysql_error());
}
比如:
正如@Sudhir所说,您的查询返回FALSE。最常见的错误处理如下所示:
$result = mysql_query($str) or die(mysql_error());
我建议你询问一下。如果它是正确的,那么检查$this->executeQuery($str)是否返回一些东西。嗯,问题是当我直接在sqlyog上通过查询进行尝试时,它工作得很好,或者当我删除播放器部分时,可以看到inventory部分,但是当我尝试查询这两个部分时,出现了错误,在一个页面中可以调用多少mysql\u查询有限制吗?是-http请求超时;)。更严重的是,我不知道,但我相信这不是问题所在。你有任何sql错误吗?嗯,问题是当我直接在SQLYG上按查询时,它工作得很好,或者当我删除播放器部分时,可以看到库存部分,但是当我尝试查询这两个部分时,都有错误,你可以在1中调用多少mysql\U查询有任何限制吗page@UmarHasan您是否尝试检查mysql_error();如果您看到与查询相关的任何错误。mysql_查询没有这样的限制,每页只能使用一次,您可以根据需要多次使用它。。!
if($result === FALSE) {
die(mysql_error());
}
public function getPlayerMoney($idPlayer){
$str="CALL sp_getPlayerMoney($idPlayer)";
$i =1;
$result_array = array();
$result = $this->executeQuery($str);
if($result === FALSE) {
die(mysql_error());
//OR return empty array
return array(); //empty array
}
while($row = mysql_fetch_array($result)){
...
$result = mysql_query($str) or die(mysql_error());