重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
数据库连接信息错误,是不是端口号或者是账号密码错误了?应该是没有开启extension = mysql.so和extension = mysqli.so,如果是windows去掉这两句话前的分号,保存php.ini
在黄梅等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站建设、做网站 网站设计制作按需求定制设计,公司网站建设,企业网站建设,高端网站设计,全网整合营销推广,成都外贸网站建设公司,黄梅网站建设费用合理。
若果是linux用命令行开启这两个模块
遇见这种情况:“Fatal error: Call to a member function fetch_row() on a non-object”
然后显示出:“严重错误:调用fetch_row()的不是一个对象”。
就要立即开始检查 :
首先,来执行代码$result_news = $mysqli-query ( $query_news );
第二步开始检查结果是否正确,也就是说,看 $result_news 是否为同一个对象,写下代码: print_r($result_news)来查看;
正确结果为: mysqli_result Object ( [current_field] = 0 [field_count] = 8 [lengths] = [num_rows] = 1 [type] = 0 )
查看PHP7.1官方文档,对这种错误的解释
New E_WARNING and E_NOTICE errors have been introduced when invalid strings are coerced using operators expecting numbers (+ - * / ** % | ^) or their assignment equivalents. An E_NOTICE is emitted when the string begins with a numeric value but contains trailing non-numeric characters, and an E_WARNING is emitted when the string does not contain a numeric value.
在使用(+ - * / ** % | ^) 运算时,例如a+b,如果a是开始一个数字值,但包含非数字字符(123a),b不是数字值开始时(b456),就会有A non-numeric value encountered警告。
你的里面年月日的表达用了-,php认为是减号,年月日被认为是运算。
你可以搜一下网上的教程有解决办法。不过看你的截图,这只是个notice, 你可以在控制器加上ini_set("error_reporting","E_ALL ~E_NOTICE"); 就不会显示了。
php访问数据库出错:Warning: mysql_fetch_array(),是参数设置错误造成的,解决方法如下:
1、首先打开电脑后,同时按住电脑键盘的【开始键】和【R键】,打开电脑的程序运行弹窗。
2、在电脑左下角弹出的程序运行弹窗中,输入字母【cmd】,然后点击【确定】按钮。
3、在弹出的运行界面中,输入【mysql -u root -p】,此时会出现属于密码的命令行,在后面输入自己数据库的密码即可。
4、数据库连接成功后,输入【show global variables like 'port';】,注意不要忘记输入最后的分号。
5、在展现出来的Mysql信息中,可以看到port的值,这个值就是本地数据库的端口号。,一般都是3306。
6、知道本地数据库端口号后,回到php代码的数据库配置中将端口号改成正确的端口号即可,这样就不会报数据库端口异常的错误了。