对帖子的评论(PHP)

对帖子的评论(PHP)

问题描述:

我正在尝试在我的网站上使用评论。评论将用于我的帖子。对帖子的评论(PHP)

事情是,我目前正在使用iframe来显示它们。

我希望代码与我的帖子在同一页面上。

我会告诉你我张贴我的代码的意思是:

comment_frame.php:

<?php 
if (isset($_POST['postComment' . $getid . ''])) { 
    $post_body = $_POST['post_body']; 
    $posted_to = "Chris"; 
    $insertPost = mysql_query("INSERT INTO post_comments VALUES ('','$post_body','$user','$posted_to','0','$getid')"); 
    echo "<p style='color: green'>Comment Posted!</p><br /><br />"; 
} 

// Get relevent comments 
$get_comments = mysql_query("SELECT * FROM post_comments WHERE post_id='$getid' ORDER BY id DESC"); 
$count = mysql_num_rows($get_comments); 
if ($count != 0) { 
while ($comment = mysql_fetch_assoc($get_comments)) { 

    $comment_body = $comment['post_body']; 
    $posted_to = $comment['posted_to']; 
    $posted_by = $comment['posted_by']; 
    $removed = $comment['post_removed']; 

    echo "<b><a href='$posted_by' target='_blank'>$posted_by</a> said: <br /></b>".$comment_body."<hr /><br />"; 
} 
} 
else 
{ 
    // Do nothing! 
} 
?> 

home.php:

<?php 
// If the user is logged in 
$getposts = mysql_query("SELECT * FROM posts WHERE user_posted_to='$user' ORDER BY id DESC LIMIT 10") or die(mysql_error()); 
while ($row = mysql_fetch_assoc($getposts)) { 
         $id = $row['id']; 
         $body = $row['body']; 
         $date_added = $row['date_added']; 
         $added_by = $row['added_by']; 
         $user_posted_to = $row['user_posted_to']; 

         $get_user_info = mysql_query("SELECT * FROM users WHERE username='$added_by'"); 
         $get_info = mysql_fetch_assoc($get_user_info); 
         $profilepic_info = $get_info['profile_pic']; 
         if ($profilepic_info == "") { 
          $profilepic_info = "./img/default_pic.png"; 
         } 
         else 
         { 
          $profilepic_info = "./userdata/profile_pics/".$profilepic_info; 
         } 
         ?> 
         <script language="javascript"> 
          function toggle<?php echo $id; ?>() { 
           var ele = document.getElementById("toggleComment<?php echo $id; ?>"); 
           var text = document.getElementById("displayText<?php echo $id; ?>"); 
           if (ele.style.display == "block") { 
            ele.style.display = "none"; 
           } 
           else 
           { 
            ele.style.display = "block"; 
           } 
          } 
         </script> 
         <?php 
         echo " 
         <br /> 
         <div class='newsFeedPost'> 
         <div class='newsFeedPostOptions'> 
         <a href='javascript:;' onClick='javascript:toggle$id()'>Show Comments</a> 
         <div style='float: left;'> 
         <a href='$added_by'><img src='$profilepic_info' height='60' /></a> 
         </div> 
         <div class='posted_by'><a href='$added_by'>$added_by</a> wrote:</div> 
         <br /><br /> 
         <div style='max-width: 600px; height: auto;'> 
         $body<br /><br /><br /><p /> 
         </div> 
          Like &ndash; Re-Shout! &ndash; Comment 
         <br /><iframe src='./comment_frame.php?id=$id' frameborder='0' style='max-height: 200px; width: 100%; min-height: 10px;'></iframe> 
         </div> 
         </div> 
         "; 
         } 
} 
?> 

,你可以看到它使用iframe显示了comment_frame.php页面。我希望所有的代码都在一个页面中。我会怎么做?

+0

再次多了一个PHP编码器使用爷爷风格编码这在很大程度上忽视安全!!!!不要使用'mysql_query',使用PDO或mysqli。 – 2015-02-07 05:56:38

把UR home.php代码中的其他条件,如果用户增加新的评论的首要条件将工作,否则第二个

if (isset($_POST['postComment' . $getid . ''])) { 
    your code here 
    }else { 
     // home.php code herer 
    } 
+0

我想要做的是在home.php文件中获取所有这些代码,然后在用户点击时显示评论框(例如“评论”)。我想我需要一个像$ comment这样的变量,并将该变量替换为iframe。我试图这样做,因为一切都在回声命令中。有任何想法吗? – 2015-02-07 05:58:54

+0

使用ajax ..我认为这将是更好:)甚至没有刷新页面..还..在home.php只是添加您的评论代码..它应该工作很好因为你添加了isset函数。 – 2015-02-07 06:02:00

+0

感谢您的帮助。我一定会去看看AJAX :) – 2015-02-07 06:06:24