我如何使用id通过php插入评论

时间:2012-03-05 15:14:43

标签: php

我是初学者。我需要帮助。 我在脚本中遇到一个小问题 我在这个脚本(admin文件夹)中添加包含文章(此页面仅用于添加线程) 我在Page中的问题(read_mor.php) 我用数据库查询来带来新闻 这是查询。

<?php 
include ('config/connect_to_mysql.php');
$id = $_GET["id"];
$fetch = mysql_query("SELECT * FROM posts WHERE id= '$id' ") or die(mysql_error());
while($myrow = mysql_fetch_assoc($fetch)) {
?>
<?php echo $myrow['title']; ?>
<?php echo $myrow['created_on']; ?>
<?php echo $myrow['categories']; ?>
<?php echo $myrow['description']; ?>
<?php echo $myrow['categories']; ?>
<?php } ?>

一切都是上帝

* 但是当我在表格中插入评论时(评论) 表格中的所有评论都显示在任何帖子中.. !! *

我需要在id文章

的文章中插入评论

此页面插入评论

<?php
include ('config/connect_to_mysql.php');

$query="INSERT INTO comments (com_id,name,url,email,comment,postid)
      VALUES
      ('', '$_POST[name]' , '$_POST[url]', '$_POST[email]', '$_POST[comment]', LAST_INSERT_ID(postid))" or die(mysql_error());

if ($query)

$result = mysql_query($query);

{
echo "<strong>Thanks!</strong><p>Your message was successfully sent.</p>";  
}
?>

数据库中的表 ----&gt;

comments



 structure for table `comments`
 (
  `com_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `url` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `comment` text COLLATE utf8mb4_unicode_ci NOT NULL,
  `dt` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `yes` int(11) NOT NULL,
  `postid` int(11) NOT NULL,
  PRIMARY KEY (`com_id`)
) ENGINE=MyISAM  DEFAULT  
</i>

帖子表 ------&GT;

CREATE TABLE IF NOT EXISTS `posts` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(200) NOT NULL,
  `description` longtext NOT NULL,
  `categories` varchar(200) NOT NULL,
  `post_meta` varchar(200) NOT NULL,
  `post_robots` varchar(200) NOT NULL,
  `meta_title` varchar(200) NOT NULL,
  `meta_description` text NOT NULL,
  `created_by` varchar(100) NOT NULL,
  `created_on` datetime NOT NULL,
  `imageref` varchar(300) NOT NULL,
  `post_status` varchar(70) NOT NULL DEFAULT 'published',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=102 ;

1 个答案:

答案 0 :(得分:1)

我相信LAST_INSERT_ID()对于auto_increment字段是正常的,而postid则不然。此外,您不应该将LAST_INSERT_ID()用于主键以外的任何其他内容。