致命错误:调用未定义的函数mysqli_result()

Ces*_*219 14 php mysql database mysqli database-connection

当我试图将旧的sql切换到sqli时,有人可以告诉我为什么这不起作用:

$query = "SELECT * FROM `product_category`";
$result = mysql_query($query, $connect) or die("could not perform query: " . mysql_error());
$num_rows = mysql_num_rows($result);

for ($i=0; $i < $num_rows; $i++)
{
    $ID = mysql_result($result,$i,"ID");
    $name = mysql_result($result,$i,"name");
    $description = mysql_result($result,$i,"description");
Run Code Online (Sandbox Code Playgroud)

至:

$query = ("SELECT * FROM `product_category`");
$result = mysqli_query($connect, $query) or die("could not perform query");
$num_rows = mysqli_num_rows($result);

for ($i=0; $i < $num_rows; $i++)
{
    $ID = mysqli_result($result, "ID");
    $name = mysqli_result($result,$i,"name");
    $description = mysqli_result($result,$i,"description");`
Run Code Online (Sandbox Code Playgroud)

它一直给我一个错误:"致命错误:调用未定义的函数mysqli_result()"

Mar*_*c B 18

不要使用这种代码.这是非常低效的.mysqli_fetch_assoc()改为使用:

while($row = mysqli_fetch_assoc($result)) {
   $id = $row['ID'];
   $name = $row['name']; 
   etc..
}
Run Code Online (Sandbox Code Playgroud)

一个SINGLE数据库操作,而不是你想要做的3+.

  • +1.要真正回答OP提出的第一个问题,"告诉我为什么这不起作用"......问题中的代码不起作用的原因是它调用了一个不存在的`mysqli_result()`函数.该功能不存在. (5认同)
  • 嘿,现在!:)我们中的一些摩门教徒碰巧喜欢我们可以使用的愚蠢功能,我们想知道所有dem highfalutin hijinx dat发生在幕布背后.我只想要我的现场价值!(我的孩子,我的孩子)(我已经看到<twitch>一个`mysqli_result`函数<shudder>的实现). (3认同)

Rom*_*nyk 5

if (!function_exists('mysqli_result')) {
  function mysqli_result($res, $row, $field=0) {
    $res->data_seek($row);
    $datarow = $res->fetch_array();
    return $datarow[$field];
  }
}
Run Code Online (Sandbox Code Playgroud)

您可以创建此功能。