Php SQL查询未显示超过1行
这是查询3或查询4中出现错误的全部代码。正如您所看到的,查询3只是获取了构建查询4的信息,该查询应该返回结果 我有查询1和查询2工作正常,有正确的数据显示Php SQL查询未显示超过1行,php,sql,Php,Sql,这是查询3或查询4中出现错误的全部代码。正如您所看到的,查询3只是获取了构建查询4的信息,该查询应该返回结果 我有查询1和查询2工作正常,有正确的数据显示 <?php session_start(); //printf('<pre>%s</pre>', print_r($_SESSION, true)); require('includes/config.inc.php'); require('includes/session.php'); //WORKING D
<?php
session_start();
//printf('<pre>%s</pre>', print_r($_SESSION, true));
require('includes/config.inc.php');
require('includes/session.php');
//WORKING
DB_Connect();
$query = "SELECT * FROM food_delivery_orders_items WHERE food_delivery_orders_items.type = 'product' AND food_delivery_orders_items.order_id=".$_SESSION['pdf_quote']['id']."";
$result = mysql_query( $query) or die(mysql_error());
while($row = mysql_fetch_array($result))
{
$hash = $row['hash'];
$foreignid = $row['foreign_id'];
$qty = $row['cnt'];
}
$query2 = "SELECT * FROM food_delivery_products WHERE food_delivery_products.id = ".$foreignid."";
$result2 = mysql_query( $query2) or die(mysql_error());
while($row = mysql_fetch_array($result2))
{
$name = $row['name'];
$description = $row['description'];
}
//---------------------------------------------------------------------------------------------------------------
$query3 = "SELECT * FROM food_delivery_orders_items WHERE food_delivery_orders_items.type = 'extra' AND food_delivery_orders_items.order_id=".$_SESSION['pdf_quote']['id']."";
$result3 = mysql_query( $query3)or die(mysql_error()) ;
while($row = mysql_fetch_array($result3))
{
$foreignidextra = $row['foreign_id'];
$qtyextra = $row['cnt'];
}
$query4 = "SELECT * FROM food_delivery_extras WHERE food_delivery_extras.id = ".$foreignidextra."";
$result4 = mysql_query( $query4) or die(mysql_error());
while($row = mysql_fetch_array($result4))
{
$nameextra = $row['name'];
}
echo $nameextra;
echo $qtyextra;
DB_Disconnect();
//$products = implode(", ",$_SESSION['pdf_quote']['product_arr']);;
//print $products
?>
打印$row如果要打印所有代码,则代码>仅在循环内有效。否则,它将只打印最后一行。成功
$query3 = "SELECT * FROM food_delivery_orders_items WHERE food_delivery_orders_items.type = 'extra' AND food_delivery_orders_items.order_id=".$_SESSION['pdf_quote']['id']."";
$result3 = mysql_query( $query3) ;
while($row = mysql_fetch_array($result3))
{
$foreignidextra = $row['foreign_id'];
$qtyextra = $row['cnt'];
print_r($row);
}
这是因为在执行循环时,在之后打印$row
所以它只打印最终结果集
改用类似的方式:
您还可以使用var\u dump($row)代码>而不是打印($row)代码>
每次循环迭代时,这将输出存储在$row
数组中的所有值,或者您不仅要覆盖循环中的这两个变量,而且还要在循环结束后打印$row。是否尝试使用var\u dump($result3)
对其进行调试?
$query3 = "SELECT * FROM food_delivery_orders_items WHERE food_delivery_orders_items.type = 'extra' AND food_delivery_orders_items.order_id=".$_SESSION['pdf_quote']['id']."";
$result3 = mysql_query( $query3) ;
while($row = mysql_fetch_array($result3))
{
$foreignidextra = $row['foreign_id'];
$qtyextra = $row['cnt'];
print_r($row);
}