2023-04-14 Fatal error: Call to a member function fetch_assoc() on a non-object in C:wampwwwworkuser

Posted iuniko

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2023-04-14 Fatal error: Call to a member function fetch_assoc() on a non-object in C:wampwwwworkuser相关的知识,希望对你有一定的参考价值。

问题:php报错。

业务场景:使用update语句去更新数据库字段。

原因:update接收值不正确。

原代码:

$query = "UPDATE student SET date = now() WHERE id = $id";
$result = $mysqli->query($query2) or die($mysqli->error); // 问题出在这   
$data = $result->fetch_assoc();
  if ($data)
      $ary = array(\'data\' => \'\', \'msg\' => \'更新成功\', \'status\' => \'0\');
  else
      $ary = array(\'data\' => \'\', \'msg\' => \'更新失败\', \'status\' => \'1\');
 
  exit(JSON($ary));

修改后:

$query = "UPDATE student SET date = now() WHERE id = $id";
$result = $mysqli->query($query2); // 把or die($mysqli->error)删了
$data = $result->fetch_assoc();
  if ($data) 
      $ary = array(\'data\' => \'\', \'msg\' => \'更新成功\', \'status\' => \'0\');
   else 
      $ary = array(\'data\' => \'\', \'msg\' => \'更新失败\', \'status\' => \'1\');
  
  exit(JSON($ary));

问题就出在or die($mysqli->error)这里。但我还是不太明白,为什么select可以用or die($mysqli->error),而update就不行了呢,是因为我的$data判断有误吗?

2022-07-10:以下go语言代码输出什么?A:A,B;B:A,C:A,fatal error;D:fatal error... func main() { var m sync.Mute

2022-07-10:以下go语言代码输出什么?A:A,B;B:A,C:A,fatal error;D:fatal error…

func main() 
    var m sync.Mutex
    fmt.Print("A, ")
    m.Lock()

    go func() 
        time.Sleep(200 * time.Millisecond)
        m.Unlock()
    ()

    m.Lock()
    fmt.Print("B ")

答案2022-07-10:

答案选A。在 main goroutine 第二次请求 Lock 时,会堵塞。这样另一个 goroutine 会运行,释放锁。如果没有另一个 goroutine 释放锁,则会报 fatal error,所有的 goroutine 都处于 sleep 状态,死锁!


以上是关于2023-04-14 Fatal error: Call to a member function fetch_assoc() on a non-object in C:wampwwwworkuser的主要内容,如果未能解决你的问题,请参考以下文章

求解决方案?.c(4) : fatal error C1083: Cannot open include file: 'sys/socket.h': No such

解决 “fatal error C1083: ”无法打开包括文件

grub_script.yy.c:2354:13:错误:“yy_fatal_error”已定义但未使用

2022-07-10:以下go语言代码输出什么?A:A,B;B:A,C:A,fatal error;D:fatal error... func main() { var m sync.Mute

C语言编译报错:fatal error: mutex: No such file or directory

已经在其他文件中定义, fatal error LNK1169: 找到一个或多个多重定义的符号