我正在使用PHP和MySQL运行以下查询但是如果我只查询1个查询它可以工作,但如果我做3个查询则不起作用
知道为什么吗?
看起来像$))导致问题,但尝试了很多方法,它只是没有显示
$boletas = mysqli_query($datacenter, "
SELECT * FROM ventas
WHERE documento = 'boleta'
ORDER BY id DESC LIMIT 1");
$facturas = mysqli_query($datacenter, "
SELECT * FROM ventas WHERE documento = 'factura'
ORDER BY id DESC LIMIT 1");
$notas = mysqli_query($datacenter, "
SELECT * FROM ventas
WHERE documento = 'nota'
ORDER BY id DESC LIMIT 1");
while($mostrar = mysqli_fetch_assoc($revisar)){
while($boleta = mysqli_fetch_assoc($boletas)) {
while($factura = mysqli_fetch_assoc($facturas)) {?>
<select class="selects" >
<option value="3" data-price="
<?php
echo str_pad($boleta['folio'] + 1, 15, "0", STR_PAD_LEFT);
?>">
boleta</option>
<option value="4" data-price="
<?php
echo str_pad($factura['folio'] + 1, 15, "0", STR_PAD_LEFT);
?>">factura</option>
<option value="5" data-price="
<?php
echo str_pad($nota['folio'] + 1, 15, "0", STR_PAD_LEFT);
?>">nota de venta</option>
</select>
<input type="text" class="inputs"
value="<?php
echo str_pad($boleta['folio'] + 1, 15, "0", STR_PAD_LEFT);
?>">
<?php
}
}
}
?>
它只显示使用所有3个查询的空白页面,但如果我使用1个查询,我会得到正确的结果 对此感到疯狂
答案 0 :(得分:-1)
问题是mysql_fetch_assoc
使用上一次mysqli_query
调用的结果。如果你想修复你的代码,你必须使用mysqli_query
遍历第一个mysql_fetch_assoc
的结果,将它存储在一个数组中,循环遍历该数组,然后执行内部{{1} },并重复。
mysqli_query
但是我不建议您使用单个查询实现所需的功能,并且在数据库上效率更高。
另外,请在此处提问时缩进并格式化代码。我不得不通过文本编辑器运行它来格式化它以便能够阅读它。