好的,所以我的标题中有一个数组"$landing".php,然后在我的页面中.php我包含标题.php但由于某种原因,当我在页面的数组中调用"名称"字段时.php: echo $landing['Name'];
它只是不起作用。
这就是数组的填充方式,并且在标头中调用它非常有效。
$landing = array();
while ($row = mysql_fetch_array($result)) {
$str = strtolower($row['Name']);
if ($str == $name) {
$landing = $row;
}
}
澄清一下,$row和$landing都是数组,并且都有多个字段"名称"颜色"信息"。
我在这里做错了什么?我需要以某种方式使其全球化还是正在发生的事情?
原始代码以某种方式工作,现在正如 OP 在评论中所说。
但我的旧提示仍然适用:
- 考虑使用 MySQLi 或 PDO 而不是已弃用的 MySQL 扩展!
- 为什么要在客户端比较数据集的列值?你可以在MySQL端做到这一点,它会更快!
正如 ComFreek 正确指出的那样,您正在将$landing变成一个字符串。相反,如果您尝试将条目添加到登陆数组,请使用 [] 括号,表示"添加到新条目"。
$landing = array();
while ($row = mysqli_fetch_array($result)) {
$str = strtolower($row['Name']);
if ($str == $name) {
$landing[] = $row;
}
}
我无法评论 LS97 帖子,无论如何你想使用 $landing["名称"] 您将 LS97 代码编辑成这样:
$landing = array();
while ($row = mysqli_fetch_array($result)) {
$str = strtolower($row['Name']);
if ($str == $name) {
$landing["name"] = $row;
}
}
如果要使用多个名称,LS97 代码就可以了。
问题是他们说了什么。(使用 $landing = $row,着陆将是一个字符串。