数据库常见错误及解决办法

深藏阁楼爱情的钟 2022-07-24 05:21 899阅读 0赞

1.Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in D:\wamp\wamp64\www\library\admin\book_add.php on line 70
错误:mysqli_fetch_array()期望一个结果集,却收到一个boolean,

  1. $result = mysqli_query($con,'select * from admin where _id='.$id);
  2. $row= mysqli_fetch_array($result,MYSQLI_ASSOC);

解决办法:
1.mysqli_fetch_array()的第一个参数是 mysqli_query的结果,但是没有结果输出,所以会造成这句话执行出错。检查mysqli_query的输出是不是错误,一般是查询条件写错,出现的错误。
2.如果确定没有错误,加一句判断语句,判断查询的结果是一个矩阵

  1. if(is_array($result))

输入错误
2.Illegal string offset ‘_name’ in D:\wamp\wamp64\www\library\admin\book_edit.php on line 57
报错的原因是可能存在空数组,但是你要取出数组中的值。
例如 echo $row['_name']

解决办法:首先判断是不是一个矩阵,然后进行输出

  1. if (is_array($row))echo $row['_name']

3.Notice: Undefined variable: result in D:\wamp\wamp64\www\library\admin\book_edit.php on line 202
解决办法: result是一个没有定义的变量,可能是数据库查询没有结果,但是使用
$r=mysqli_fetch_array($result,MYSQLI_ASSOC)对其分行,使用if(is_array($result))判断后然后操作
4.//检查管理员是否登录

  1. function checkLogin($id) {
  2. session_start();
  3. if(!isset($_SESSION['sid']))
  4. {
  5. echo "<script language='javascript'>alert('请先登录!');parent.location.href='index.php';</script>";
  6. }
  7. if($id==0)return;
  8. }

解决办法:调用函数时少了参数

  1. function checkLogin($id = 0){ ....}

5.A session had already been started - ignoring session_start() on line 5
seeeion 已经打开,又一次使用session_start();
解决办法:

  1. //如果没有开启session,则打开
  2. if(!isset($_SESSION)){
  3. session_start();
  4. }

6.mysql_connect()废弃,不能使用,换成mysqli_connect.新的标签的参数个数可能与旧的不同,需要查看一下手册。

发表评论

表情:
评论列表 (有 0 条评论,899人围观)

还没有评论,来说两句吧...

相关阅读