2013-07-14 53 views
-1

我有一個問題追加數據,並發表評論的評論反覆

當添加3帖,寫上重複發表數2評論評論。

澄清更

當我加入3-帖子

交1 =

柱2 = B

柱3 = C

和寫在柱2的註釋此評論重複請求幫助

這樣的photo

這是文件

的index.php

<? include("../post/includes/config.php"); ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
     <script type="text/javascript" src="jquery.js"></script> 
     <script type="text/javascript"> 
     $(function(){ 
      $("#update_state").submit(function(){ 
      var text = $(".text") .val(); 
      var s = { 
       "text":text 
      } 
      $.ajax({ 
       url:'action.php', 
       type:'POST', 
       data:s, 
       cache: false, 
       beforeSend: function(){ 
       $(".loading") .show(); 
       $(".loading") .html("loading..."); 
       }, 
       success:function(html){ 
       $("#show_new_posts") .prepend(html); 
       $(".loading") .hide(); 
       $(".text") .val(""); 
       } 
      }); 
      return false; 
      }); 

      //add comment 

      $(".comment_form").submit(function(){ 
      var id_post = $(this).attr('rel'); 
      var text_comm = $(".commtext[rel="+id_post+"]") .val(); 
      var s = { 
       "id_post":id_post, 
       "text_comm":text_comm 
      } 
      $.ajax({ 
       url:'add_comment.php', 
       type:'post', 
       data:s, 
       beforeSend: function(){ 
       $(".loadingcomm[rel="+id_post+"]") .show(); 
       $(".loadingcomm[rel="+id_post+"]") .html("<img src=\"style/img/ajax/load1.gif\" alt=\"Loading ....\" />"); 
       }, 
       success:function(html){ 
       $(".loadingcomm[rel="+id_post+"]").hide(); 
       $(".commtext[rel="+id_post+"]") .val(""); 
       $(".shownewcomm[rel="+id_post+"]").append(html); 
       } 
      }); 
      return false; 
     }); 
     }); 
    </script> 
    </head> 
    <body> 
    <form id="update_state"> 
     <textarea class="text" name="text"></textarea> 
     <input type="submit" value="go" /> 
    </form> 
    <div class="loading"></div> 
    <div id="show_new_posts"></div> 
<? 
$select_posts = $mysqli->query("SELECT * FROM posts ORDER BY id DESC LIMIT 4 "); 
$num_posts = $select_posts->num_rows; 
if($num_posts){ 
    while ($rows_posts = $select_posts->fetch_array(MYSQL_ASSOC)){ 
    $id_posts    = $rows_posts ['id']; 
    $post_posts   = $rows_posts ['post']; 
?> 
<div style="padding: 5px; margin: 5px; background:#ccc; width:300px;"> 
    <b>admin</b> 
</div> 
<div style="padding: 5px; margin: 5px; background:#ccc; width:300px;"> 
    <? echo $post_posts; ?> 
</div> 
<div class="shownewcomm" rel="<? echo $id_posts; ?>"></div> 
<form rel="<? echo $id_posts; ?>" class="comment_form"> 
    <textarea rel="<? echo $id_posts; ?>" style="height: 20px;" placeholder="Comment.." class="commtext"></textarea> 
    <input type="submit" value="comment" /> 
</form> 
<hr /> 
<? 
} 
} 
?> 
</body> 
</html> 

action.php的

<script type="text/javascript" src="jquery.js"></script> 
<script type="text/javascript"> 
    $(function(){ 

    $(".comment_form").submit(function(){ 

     var id_post = $(this).attr('rel'); 
     var text_comm = $(".commtext[rel="+id_post+"]") .val(); 

     var s = { 
     "id_post":id_post, 
     "text_comm":text_comm 
     } 

     $.ajax({ 
     url:'add_comment.php', 
     type:'post', 
     data:s, 
     beforeSend: function(){ 
      $(".loadingcomm[rel="+id_post+"]") .show(); 
      $(".loadingcomm[rel="+id_post+"]") .html("<img src=\"style/img/ajax/load1.gif\" alt=\"Loading ....\" />"); 
     }, 
     success:function(html){ 
      $(".loadingcomm[rel="+id_post+"]").hide(); 
      $(".commtext[rel="+id_post+"]") .val(""); 
      $(".shownewcomm[rel="+id_post+"]").append(html); 
     } 
     }); 

     return false; 
    }); 

    }); 
</script> 


<?php 
include("../post/includes/config.php"); 
$text = $_POST['text']; 

$insert = $mysqli->query("INSERT INTO posts (id, post) VALUE ('', '$text')"); 
$id_posts = $mysqli->insert_id; 
if($insert){ 
    ?> 
<div style="padding: 5px; margin: 5px; background:#ccc; width:300px;"> 
    <b>admin</b> 
</div> 
<div style="padding: 5px; margin: 5px; background:#ccc; width:300px;"> 
    <? echo $text; ?> 
</div> 
<div class="shownewcomm" rel="<? echo $id_posts; ?>"></div> 
<form rel="<? echo $id_posts; ?>" class="comment_form"> 
    <textarea rel="<? echo $id_posts; ?>" style="height: 20px;" placeholder="Comment.." class="commtext"></textarea> 
    <input type="submit" value="comment" /> 
</form> 
<hr /> 
<? 
} 
?> 

add_comment.php

<?php 
$id_post = $_POST['id_post']; 
$text_comm = $_POST['text_comm']; 

?> 
admin : <? echo $text_comm; ?> 
<br /> 
+0

-1看完了幾個後次,我仍然不知道你想說什麼。我在代碼中添加了一些縮進(如果編輯得到確認),以便您的代碼至少可讀。 – Sumurai8

回答

0

你有$(".comment_form").submitajax callindex.phpaction.php。而在index.php你前面加上action.php結果這樣

$("#show_new_posts").prepend(html); 

可能是因爲這將有不止一個ajax call。從action.php刪除所有JavaScript代碼,並嘗試

更新:

action.php所做的更改情況如下:

  1. 刪除了其中的jQuery引用作爲已經在index.php那裏,在移動其他JS代碼end

  2. 在表格中添加了ID

    <form rel="<?php echo $id_posts; ?>" id="comment_form_<?php echo $id_posts; ?>" class="comment_form">

  3. 更新提交處理程序使用的形式ID是這樣的:

    $("#comment_form_<?php echo $id_posts; ?>").submit(function(){

更新action.php代碼如下:

<?php 
include("../post/includes/config.php"); 
$text = $_POST['text']; 

$insert = $mysqli->query("INSERT INTO posts (id, post) VALUE ('', '$text')"); 
$id_posts = $mysqli->insert_id; 
if ($insert) { 
    ?> 
    <div style="padding: 5px; margin: 5px; background:#ccc; width:300px;"> 
     <b>admin</b> 
    </div> 
    <div style="padding: 5px; margin: 5px; background:#ccc; width:300px;"> 
     <?php echo $text; ?> 
    </div> 
    <div class="shownewcomm" rel="<?php echo $id_posts; ?>"></div> 
    <form rel="<?php echo $id_posts; ?>" id="comment_form_<?php echo $id_posts; ?>" class="comment_form"> 
     <textarea rel="<?php echo $id_posts; ?>" style="height: 20px;" placeholder="Comment.." class="commtext"></textarea> 
     <input type="submit" value="comment" /> 
    </form> 
    <hr /> 
    <script type="text/javascript"> 
     $(function() { 

      $("#comment_form_<?php echo $id_posts; ?>").submit(function(){ 

       var id_post = $(this).attr('rel'); 
       var text_comm = $(".commtext[rel=" + id_post + "]").val(); 

       var s = { 
        "id_post": id_post, 
        "text_comm": text_comm 
       } 

       $.ajax({ 
        url: 'add_comment.php', 
        type: 'post', 
        data: s, 
        beforeSend: function() { 
         $(".loadingcomm[rel=" + id_post + "]").show(); 
         $(".loadingcomm[rel=" + id_post + "]").html("<img src=\"style/img/ajax/load1.gif\" alt=\"Loading ....\" />"); 
        }, 
        success: function(html) { 
         $(".loadingcomm[rel=" + id_post + "]").hide(); 
         $(".commtext[rel=" + id_post + "]").val(""); 
         $(".shownewcomm[rel=" + id_post + "]").append(html); 
        } 
       }); 

       return false; 
      }); 

     }); 
    </script> 
    <?php 
} 
?> 
+0

其不能正常工作 –

+0

回答更新try'Updated action.php code' –