Php 如何查询获取特定帖子id?

Php 如何查询获取特定帖子id?,php,mysql,Php,Mysql,我正在尝试使用php和mysql(没有jquery或ajax)制作一个评论系统 问题是如何找到用户评论的帖子id,我使用了一个while循环,它将帖子发布到所有的帖子,到目前为止我在这里 //user data is set if (isset($_POST['comment'])) { //variables to post in database $comment = $_POST['comment']; $com_from = $_SESSION['user'];

我正在尝试使用php和mysql(没有jquery或ajax)制作一个评论系统 问题是如何找到用户评论的帖子id,我使用了一个while循环,它将帖子发布到所有的帖子,到目前为止我在这里

//user data is set
if (isset($_POST['comment'])) {
    //variables to post in database
    $comment = $_POST['comment'];
    $com_from = $_SESSION['user'];
    $com_to = $_GET['u'];
    $com_time = date("Y-m-d H:i:s");
    $u = $_GET['u'];

    //query to get the id of the post in the `post` table
    $que = mysql_query("SELECT * FROM posts WHERE `post_to` = '$u'");
    if ($que) {
        //loop through all the posts ad get all ID
        while ($ro = mysql_fetch_array($que)) {
            $pst_id = $ro['post_id'];
            //query inside the while loop for getting the post ID i think here is the problem
            if (!empty($_POST['comment'])) {
                $com_query = mysql_query("INSERT INTO comments SELECT '','$comment',`post_id`,'$com_from','$com_to','$com_time' FROM `posts` WHERE `posts`.`post_id` = $pst_id");
            }
        }
    }
}

我以有限的理解提供了插入查询

 $pst_id = $_POST['postid']; // from form 

 $com_query = mysql_query("INSERT INTO comments  values ('$comment','$pst_id','$com_from','$com_to','$com_time') ");
如果您分享您的
注释
表结构,我可以为您提供更多帮助


注意使用mysqli_*函数而不是mysql_*函数
(已弃用)

首先,您不必通过循环查询post表。 如果您正在评论一篇特定的文章,请使用隐藏类型以html形式传递其ID

// here 1 is id of post
<input type="hidden" name="postid" value="1">

什么是
$u
$com\u to
?您提供的代码和注释不可读。@HamedKamrava$u是$\u GET['u'],其中url是profile.php?u=username和$com\u to是对用户的注释(表示帖子所在的用户配置文件)。您的脚本容易受到SQL注入的攻击。@Gumbo how,请解释一下plz??谢谢:D,然后等待我将发布我的评论表结构,
post_id
是外键id | comment | post_id | comment | by | commented | to | comment | |
post_id
是外键,同时提交您需要传递的评论或
$\u post
posts表
id。那么,您就来了检索帖子id并相应地更新评论。如何在许多帖子中动态使用它??你知道有很多帖子如何为不同的值插入html??动态获取帖子id并在隐藏字段中回显你的值。在循环帖子时,在隐藏字段中动态回显帖子id
是,它可以工作:D但在评论上方与自身相呼应,但以下操作有效“”
if (isset($_POST['comment'])) {
    //variables to post in database
    $comment = $_POST['comment'];
    $com_from = $_SESSION['user'];
    // $com_to is post id and i believe comment table contain field to store post id
    $com_to = $_POST['postid'];
    $com_time = date("Y-m-d H:i:s");
$que = mysql_query("INSERT INTO comments VALUES('$comment','$com_to','$com_from','$com_time')");
}