所以我这里有一个我创建的功能。当我使用postgres数据库时,它工作,但一旦我切换到mysqli,由于某种原因,它不返回id。这是我的功能:
function getAccID($connection, $username){
$res = mysqli_query($connection, "SELECT accounts_id FROM people WHERE people.username ='$username'");
if ($res){
$row = mysqli_fetch_assoc($res);
if ($row){
return ($row[0]);
}
}else{
//handle the error
}
}
以下是我如何宣布该功能:
$accountID = getAccID($connection, $user);
$p->addContent("Account ID: $accountID");
if (!$accountID) $p->addContent('Error: ' . mysqli_error($connection) . "<br>");
PS:如果有人说我使用mysqli_query而不是准备陈述,我会谋杀一些婴儿:L。我正在使用它进行测试,一旦一切正常,就很容易切换到准备好的语句。
问题在于Postgres我可以使用字段的id,但是使用mysqli,我必须使用该名称。
因此这不起作用
$row[0];
必须是:
$row["name_of_field"];
答案 0 :(得分:1)
当您使用 mysqli_fetch_assoc
时$ row应该具有字段的名称
使用$ row [&#39; id&#39;]代替$ row [0]