PHP 报告未定义的索引,当使用时在 MySQL 中选择 *


php report undefined index when used select * in mysql

只有

当我使用 select * 时才有问题,但如果我从数据库中选择确切的字段,它工作正常

$sql = "SELECT * FROM `product id`;";
$resutl = mysql_query($sql);
while ($row = mysql_fetch_assoc($result))
{
  echo $row["product name"];
};

如果我使用

SELECT `product name` FROM `product id`

谢谢

$sql = "SELECT * FROM `product id`";
$result = mysql_query($sql);
while ($row = mysql_fetch_assoc($result))
{
  print_r($row);
}

检查您的数组并完美遍历它,因为当您调用所有行时,它与获取一行不同。

试试这个,它应该可以正常工作,你会得到更多的想法。我发现只有 2 个错误$result变量不正确,查询中有分号!

包含空格的表名 e 列名不是一个好主意,因为可能与 mysql sintax 冲突(当 mysql 解析查询时)。您可以使用 var_dump($row)。

使用 mysql_fetch_array() 而不是 mysql_fetch_assoc()

虽然两者相似mysql_fetch_assoc() 只返回一个关联数组。

同样,你应该考虑从mysql迁移到mysqli或PDO.mysql从PHP6开始被删除,并且已经从PHP5.5开始贬值。