Heim > Artikel > Backend-Entwicklung > php编程 连接数据库 读取数据表的问题
我的数据库有多张数据表,只有表order不能读取 只能打印出111
其他任何一张表都能 就是会打印出222
不知道出了什么问题QAQ
<?php $corn=mysql_connect('localhost','root',''); mysql_query('set names UTF8',$corn); if(!$corn) die('Could not connect: ' . mysql_error()); $db_selected=mysql_select_db("daydream",$corn); if (!$db_selected) die ('Can\'t use foo : ' . mysql_error()); $query=mysql_query("select * from order "); if(!$query) echo 111; else echo 222;//这三行是用来测试是否读取到数据表 $row = mysql_fetch_array($query); echo" <div> <p class='item'>购物车编号:$row[cartNo]  客户编号:$row[cusNo]  商品编号:$row[proNo]  购买时间:$row[cartDate]  购买金额:$row[cartSum]  收货地址:$row[cartAddress] </input></p> </br> </div><p> "; echo"  </p>"; ?>
真的做到最后显示订单记录这里最容易的部分啊!!!!居然读不到订单表!!!!拜托大家帮我看看!!!实在想不出什么问题QAQ
下面是我的数据表和数据库
$query=mysql_query("select * from order ");
order 是??字
改成
$query=mysql_query("select * from `order `");
就可以了。
其?表名一般都不要用??字比?好,可以用orders?做。
$query=mysql_query("select * from `order` ");
表名不能使用关键字这个我知道
但是一但有关键字,就要用‘’起来。
只有表order不能读取 只能打印出111
其他任何一张表都能 就是会打印出222 其实从你的描述就已经知道问题所在了,就是order表的问题,什么问题呢,和关键字order一样,所以改一下表名吧,或者`order`
$query=mysql_query("select * from order ") or die(mysql_error());
提示什么不就知道了
mysql 保留字 http://www.cnblogs.com/lawdong/archive/2010/08/08/2357903.html
凡是将保留字挪作他用时都不需转义:用 `` 括起来
但如下保留字可以例外:
ACTION
BIT
DATE
ENUM
NO
TEXT
TIME
TIMESTAMP
原来是关键字的问题 谢谢大家啦 我知道啦 已经改好啦~~~~