如何在单个数组中添加多个查询的结果,以便以后更容易输出。
例如,
$newArray = array("mike", "john");
while ($newArray !== false){
$sql = "Select * from accounts where name = '$newArray'";
$result = mysqli_query($db_connection,$sql);
}
while ($row = mysqli_fetch_assoc($result)) {
printf $row['firstName'];
echo "----";
printf $row['num_accounts'];
echo "----";
prinf $row['location'];
echo "----";
echo "<br>";
}
我确信我错过了一些明显的东西。但我的想法是我想设置一个循环来从数组中读取,然后执行查询并存储结果。每次查询执行的条件都不同,但来自同一个表,但然后不断将结果添加到单个输出中,以便最终更容易输出。
最佳答案
您可以根据您需要的值列表避免 while simple using in 子句
$newList = "'mike', 'john'";
$sql = "Select * from accounts where name IN (" .$newList .")";
但是你不应该在sql中使用php var..你有sqlinjection的风险..为了避免这种情况,你应该看看你的sqldruver来绑定(bind)参数..
但是如果你想在同一个表上附加不同where条件的结果,你应该看看UNION子句
$sql = "Select * from accounts where name IN (" .$newList .")
UNION
Select * from accounts where you_col > 10";
关于php - 单个数组中的多个 mysql 查询结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49112899/