php - 为 foreach() 提供的参数无效 - 但脚本仍然有效

标签 php mysql foreach

建议的问题并没有完全涵盖我的问题。我对这里的答案很感兴趣,Invalid argument supplied for foreach!但不太明白它如何适用于我的情况。

我有以下代码,它确实按照我的预期工作;该代码通过匹配上一页发布的隐藏表单中给出的 id 来构建电子邮件地址数组,并在 mysql 数据库中查找“电子邮件”列。

但是,我也收到错误:第 50 行为 foreach() 提供的参数无效

感谢任何帮助。

function findEmail($id) {
$mysqli = new mysqli(DBHOST,DBUSER,DBPASS,DB);
if ($mysqli->connect_errno) {
    error_log("Cannot connect to MySQL: " . $mysqli->connect_error);
    return false;
}

$query = "SELECT email FROM `Students` WHERE id = '$id'";
$result = $mysqli->query($query);
while($row = $result->fetch_array()) {
    $rows[] = $row;
}
$email = "";
foreach($rows as $row) {      //This is line 50
    $email = ($row['email']);
}
return $email;
}

$userId = array();
$userEmail = array();

foreach($_POST as $key => $value) {
array_push($userId, $value);
array_push($userEmail, findEmail($value));
}

最佳答案

该错误不是致命的,您可以使其成为...但是错误是 $rows 未定义 - 您的查询必须返回空。

关于php - 为 foreach() 提供的参数无效 - 但脚本仍然有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23120350/

相关文章:

mysql - Rails Advance 查询 CASE WHEN 方法不起作用

java - 我可以在迭代 HashTable 时更改其对象的内部结构吗?

php - 基于另一个字段获取一个字段的不同 mysql 结果

Php Excel 设置整列数据对齐不起作用

mysql - 在一个mysql列中存储多个数据并单独检索数据

mysql - 如果表单中只有一个值,如何插入多个值

r - 并行missForest

PHP DOmDocument、XML 和 CSS - 无法正常工作

php - 使用 PHP 运行复杂的 MySQL QUERY

mysql 只选择具有一定长度的组