php留言板遇到的问题

增删改查
1 登陆后显示“no database selected ”
修改了conn.php后,echo出连接成功,依然显示“no database selected”
百度后发现“$con = mysql_connect(“localhost”,”root”,”“,”bbs”)”的写法是错误的,因为该扩展自 PHP 5.5.0起已废弃,并在自 PHP 7.0.0 开始被移除。
解决方法
(1).应使用 MySQLi或 PDO_MySQL 扩展来替换之。
(2).可以在函数名前加上一个 @ 来抑制出错时的错误信息 (但是根据亲身试验,我最开始就加了@,但仍然显示“no database selected”,but,在add.php和signin.php里要求mysql_query改为mysqli_query()或PDO_mysql时,我仅仅加了@就好了)

详情http://www.php.net/manual/zh/function.mysql-connect.php


2 add.php 执行添加没有问题,但一直显示 Notice: Undefined index: submit in F:\wamp64\www\bbs\add.php on line4
if($_POST['submit']) 改为 if(isset($_POST['submit']))

if($_post['submit']) 相当于是post数组里 key 为 submit,如果不存在这个key实质上是要notice报错的,产品模式下是要忽略这些notice的所以不会报错,程序就会走过去, isset($_POST['submit']) 是用来判断是否有 提交key为submit的字段


3 list.php 接上,改后错误显示为 Parse error: syntax error, unexpected ‘$query’ (T_VARIABLE) in F:\wamp64\www\bbs\list.php on line10
百度后在 $query=mysql_query($sql)or die(mysql_error()) 前加上了echo,显示为
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘selete fromcontentsby id desc’ at line 1*
。。。然后发现我select写成了selete;
“by id desc”缺少order,改为“order by id desc”
(紧接着显示了和登录界面相同的“no database selected”)


4 Access denied for user ”@’localhost’ (using password: NO)
关键字是YES还是NO,关键不在于用户是否存在,密码是否正确,它的结果取决于登录时,用户对于密码有没有字符串的输入,如果没有,MySQL数据库验证后,若出错返回此类信息,则应是 (using password: NO),若用户对密码有字符串的输入,返回的则是(using password: YES)。
详情http://blog.csdn.net/lioncode/article/details/7917310
后来分页又出现了这个问题,修改了一下mysql语句的格式变成mysqli,问题解决。


5



分页

分页按照php100视频里写的,代码基本上照敲了一遍,然后。。。漏洞百出

1 Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in F:\wamp\wamp64\www\bbs\list.php on line 12
我的代码:

    $result=mysqli_query($link,"SELECT * FROM `content`");
    $result=mysql_num_rows($numq);//查询有多少条信息

错误原因:
(1)sql语句格式错误 (2)sql语句语法与数据库结构不对应 (3)数据库本身存在问题!

$result=@mysqli_query($link,"SELECT * FROM `contents`"); $num=mysqli_num_rows($result);//查询有多少条信息  

PS.mysqli_num_rows()和mysqli_fetch_array()里都不能有$con(连接数据库)


2 Notice: Use of undefined constant page - assumed ‘page’ in F:\wamp\wamp64\www\bbs\list.php on line 15

if(isset($_GET[page])){

思路来源 http://blog.csdn.net/icqapp/article/details/12119869
按上面的搜索后发现,wamp 3.0.6 这个版本里边似乎是有~E_NOTICE的
最后选择了在每个头文件上加上error_reporting(E_ALL&~E_NOTICE);
即关闭所有的notice提示


3 Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, object given in F:\wamp\wamp64\www\bbs\list.php on line 36

$sql="SELECT * FROM`contents` limit $page &pagesize";
  $query=mysqli_query($link,$sql);//or die(mysql_error());
  while($row=mysqli_fetch_array($link,$query)){

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in F:\wamp\wamp64\www\bbs\list.php on line 36

while($row=mysqli_fetch_array($query)){




上传图片

to be continue…

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_36769175/article/details/65644516
文章标签: php 数据库
个人分类: php
想对作者说点什么? 我来说一句

php 留言板demo

2014年08月25日 81KB 下载

没有更多推荐了,返回首页

不良信息举报

php留言板遇到的问题

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭