php - 单个数组中的多个 mysql 查询结果

标签 php html mysql

如何在单个数组中添加多个查询的结果,以便以后更容易输出。

例如,

$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/

相关文章:

php - 连接整数而不计算 PHP

css - 试图将 Logo 放在 CSS 图像 slider 的顶部

javascript - 在 IE 浏览器中首次创建时如何防止自动对焦到 textarea?

javascript - 重新启用按钮、链接按钮、链接

mysql - 为通常与可能值表相关的字段存储自定义值的最佳或最可接受的方法是什么?

php - 类型转换不适用于数组

php - 如何在不带括号的 Zend_Db_Select 语句中使用 "HAVING"子句?

PHP正在上传没有读取权限的文件

php - UTF-8贯穿始终

mysql - 为什么使用内连接时会得到不同的结果