将查询结果存储为php变量

时间:2017-05-22 22:36:42

标签: php mysql

在您将垃圾邮件重复之前,我已经阅读了本网站上大约20-30个帖子,关于如何执行此操作以及其他人,我无法让我的工作,这就是为什么我在问这个问题。

我有以下代码:

$lookupID = "SELECT ID FROM dungeon WHERE Name = '$loc'";
$result = mysqli_query($connection, $lookupID);
$row = mysqli_fetch_row($result);
$locID = $row['ID'];

$query = "INSERT INTO boss (ID, Name, Type, Location, LocationID, Difficulty) VALUES ('0', '$boss', '$type', '$loc', '$locID', '$diff')";

lookupID的目的是基于另一个表中的$ loc值查找与之关联的locID值是什么,并将$ locID设置为该数字。目前,当我运行查询时,我得到以下内容:

Error: INSERT INTO boss (ID, Name, Type, Location, LocationID, Difficulty) VALUES ('0', 'Godzilla', 'Lizard', 'Black Rock Hold', '', '4')

locID变量没有给出任何值,因此导致错误。我确定它的一些简单和愚蠢的我正在做但我是php和mysql的新手所以我希望你能原谅我。

1 个答案:

答案 0 :(得分:3)

mysqli_fetch_row函数返回带有枚举键的数组,因此您应该使用

$locID = $row[0];

如果需要,可以使用mysqli_fetch_assoc来获取带关联键的行。