qq_37518341 2022-04-16 14:13 采纳率: 33.3%
浏览 32

使用日期自定义ID出现Call to a member function fetch() on boolean

  $today = date( "ymd" );
  $sql1 = "SELECT MAX(`PartsID`) AS MAXID FROM `parts` WHERE `PartsID` LIKE '$today%'";
     $row = $this->db->query( $sql1 )->fetch( \PDO::FETCH_ASSOC );  
      if ($row == 0) {
        $id = str_pad( $today, 3, 0 ) + 1;
  } else {
      $id = str_pad( $today, 3, 0 ) + 1;
  • 写回答

1条回答 默认 最新

  • 黑夜骑士BG 2022-04-16 14:47
    关注

    如果是boolean ,用fetchall 是错误的。
    在更新或者删除操作的时候, 会返回布尔值。如果这个时候还是用fetchall 则会报错了。
    所以在fetchall 的时候,对传入的值进行判断。
    如果是对象则可以用fetcahall 的函数。

    评论

报告相同问题?

问题事件

  • 创建了问题 4月16日

悬赏问题

  • ¥66 换电脑后应用程序报错
  • ¥50 array数据同步问题
  • ¥15 pic16F877a单片机的外部触发中断程序仿真失效
  • ¥15 Matlab插值拟合差分微分规划图论
  • ¥15 keil5 target not created
  • ¥15 C/C++数据与算法请教
  • ¥15 怎么找志同道合的伙伴
  • ¥20 如何让程序ab.eXe自已删除干净硬盘里的本文件自己的ab.eXe文件
  • ¥50 爬虫预算充足,跪巨佬
  • ¥15 滑块验证码拖动问题悬赏