PHP循环遍历数组以从数据库中选择

标签 php mysql arrays foreach

我有一个数字列表,我将其分解为一个数组。然后我想循环遍历数组并使用数组中的值从数据库中调用信息。我尝试使用 mysqli_data_seek重置结果,但第二个循环抛出错误。

<?php 
$relatedArt = explode(",",$art["art_related"]); 

foreach($relatedArt as $value) { 

$relatedQ = "SELECT art_id,art_name,art_thumb FROM zoo_art WHERE art_id = ".$value." "; 

$relatedR = mysqli_query($connection, $relatedQ); 

confirm_query($relatedR, "problem"); 

mysqli_data_seek($relatedR, 0);                             
} 
?>

最佳答案

你应该做这样的事情而不是 foreach 循环。

$relatedArt = explode($art["art_related"]);
$values = implode(",",$relatedArt); 
$relatedQ = "SELECT art_id,art_name,art_thumb FROM zoo_art WHERE art_id IN(".$values.") ";

IN 操作符用于以任意给定的顺序查询数据库。

关于PHP循环遍历数组以从数据库中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21432364/

相关文章:

php - Symfony 4 单一形式的多个实体

MySQL 左连接子查询失败

php - laravel 通过 Controller 将错误传递给 View

php - CodeIgniter 团队合作

MySQL :Need to get unique field of two row on base of a column having two different value

处理数组的 Java 代码(已编译,但不确定它是否执行了它要求的所有操作)

arrays - Julia 初始化数组/向量不是零而是随机

arrays - 获取数组排序的索引

php - mysqldump 产生输出,但 phpmyadmin 不会导入它?

php - 1-1 使用PHP/MySQL的聊天系统