PHP mysql 表用于注释


PHP mysql table for comments

我正在向网站添加评论,并认为我会制作一个简单的评论表,如下所示,但它不起作用。一定是一个错字,但尽管一遍又一遍地把它复制到不同的文件中等等,我还是找不到它。 另外,对于那些熟悉评论的人来说,这些字段是否足够多?

$maketable = "CREATE TABLE comments(id INT NOT NULL AUTO_INCREMENT, 
 PRIMARY KEY(id),
 name VARCHAR(30),
 whenadded DATETIME,
 storyid INT,
 comment TEXT,
 show TINYINT(1),
 userid INT)";
mysql_query($maketable);

我认为"show"是mysql中的一个保留词。尝试"显示"或其他内容:

$maketable = "CREATE TABLE comments(id INT NOT NULL AUTO_INCREMENT, 
 PRIMARY KEY(id),
 name VARCHAR(30),
 whenadded DATETIME,
 storyid INT,
 comment TEXT,
 display TINYINT(1),
 userid INT)";
mysql_query($maketable);

在 php 中用于数据库连接池的凭据不应具有数据库的创建/删除权限。最好使用像phpmyadmin这样的"sql-tool"来进行数据库设计。

一个优点是用于调试目的的更好的错误消息?

你检查过mysql_error吗?

php.net/mysql_error

我会将 PRIMARY KEY 行移动到 SQL 语句的最底部。

$maketable ="CREATE TABLE  comments (
id INT( 10 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
name VARCHAR( 30 ) NOT NULL,
whenadded DATETIME,
storyid INT( 10 ),
 comment TEXT,
 display INT(1),
 userid INT ( 10 )
) ENGINE = MYISAM;"
mysql_query($maketable);