所以我在这里有一个我创建的函数。当我使用 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"];