0

映画情報を含むデータベースにコメントを送信したいフォームがあります。フォームと同じdivタグに、人々がコメントしているfilm_idに関連するデータベースからのコメントをロードするphpスクリプトがあります。

フォームコードはこちら

<p>Add a Comment</p>
<form id="addCommentForm" method="post">
<div>
<input type="hidden" name="hidden" id="hidden" value="54">
<label for="name">Your Name</label>
<input type="text" name="name" id="name" />

<label for="body">Comment Body</label>
<textarea name="comment" id="comment" cols="20" rows="5"></textarea>

<input type="submit" id="comment" class="button" value="Submit" />
</div>
</form>

非表示の値には、人々がコメントしている映画のID番号が含まれています。私はこのJavaScriptを持っています-

<script type="text/javascript">
                                    $(".button").click(function() {

        var name = $("input#name").val();
        var comment = $("input#comment").val();
        var filmnumber = $("input#hidden").val();

        var dataString = 'name='+ name + '&comment=' + comment + '&filmnumber=' + filmnumber;

    $.ajax({
      type: "POST",
      url: "comment.php",
      data: dataString,
      success: function() {

        $('#<?php echo $row['Films_ID'] ?>').fadeOut('slow');
    document.getElementById(<?php echo $row['Films_ID'] ?>).innerHTML=xmlhttp.responseText;
    $('#<?php echo $row['Films_ID'] ?>').fadeIn('slow');
      }
     });

コメントという名前のphpページにデータを送信してから、divを更新します(div番号はコメントに関連するfilm_idです)。

送信したい私のphpページはこれです-

<?php

    $comment_name =  $_POST["name"];
    $comment_body =  $s_POST["comment"];
    $film_no =  $s_POST["filmnumber"];

    // Connects to your Database 
     mysql_connect("localhost", "****", "****") or die(mysql_error()); 
     mysql_select_db("ignitet1_CheckFilm") or die(mysql_error()); 

    $query1 = "INSERT INTO film_comments (comment_id,Films_ID,name,comment) 
    VALUES ('','$film_no', '$comment_name','$comment_body')";
    $runquery1 = mysql_query($query1)or die(mysql_error()); 

?>

助けてくれてありがとう!

4

1 に答える 1

0

エントリを追加する場合と同じようにAJAXを使用します。新しいエントリを追加するのと同じ呼び出しで更新されたリストを取得するか、後で2回目の呼び出しを行い、その結果を使用してページにコメントを入力します。

于 2012-05-02T16:18:28.517 に答える