簡體   English   中英

提交表單后顯示成功消息

[英]Displaying a success message after form submission

我試圖理解jquery,尤其是使用ajax在mysql表中插入和顯示數據。

我一直在嘗試使用此代碼來插入和顯示mysql數據庫中的記錄。 我現在正在嘗試使其在ID為“ info”的div中顯示成功消息,同時還顯示所有記錄。 我似乎只做一件事,卻從不做。 非常感謝。

form.php

     <script   src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
  </script>
  <script src="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>

 <script type="text/javascript">
           $(document).ready(function(){

                function showComment(){
                  $.ajax({
                    type:"post",
                    url:"process_ajax.php",
                    data:"action=showcomment",
                    success:function(data){
                         $("#comment").html(data);

                    }
                  });
                }
                showComment();

                $("#button").click(function(){

                      var username=$("#username").val();
                      var review=$("#review").val();

                      $.ajax({
                          type:"post",
                 url:"process_ajax.php",
                                 data:"username="+username+"&review="+review+"&action=addcomment",
                   success:function(data){
                       $("#info").html(data);
                         }

                      });

                });
           });
   </script>
  </head>

   <body>
    <form>
     Username : <input type="text" name="username" id="username"/>
           </br>
           Review : <input type="text" name="review" id="review" />
           </br>
           <input type="button" value="Send Comment" id="button">
            </form>
         <div id="info" />
           <ul id="comment"></ul>

   </body>
   </html>

Process_ajax.php

  <?php
 include_once("db_conx.php");

 $action=$_POST["action"];
  if($action=="showcomment"){
  $show="Select * from user_reviews ORDER by date desc";
  $result = $db_conx->query($show);
 while($row=mysqli_fetch_array($result)){
    echo "<li><b>$row[username]</b> : $row[review]</li>";
    }
    }
   else if($action=="addcomment"){
 $username= ($_POST['username']);
 $review= ($_POST['review']);

  $stmt = $db_conx->prepare('INSERT user_reviews SET username = ?,   review=?');
$stmt->bind_param('ss', $username, $review);
$stmt->execute();
if ($stmt->errno) {
 echo "There was an error in saving your review. Please try again." .          $stmt->error;
   }else{
   echo "Your review has been saved";
 }
 }
 ?>

將記錄數據另存為數組,並將消息另存為普通var並創建json:

$list = '';
while($row=mysqli_fetch_array($result)){
    $list .= "\n<li><b>$row[username]</b> : $row[review]</li>";
} 

if ($stmt->errno) {
   $msg = "There was an error in saving your review. Please try again." .             $stmt->error;
}else{
   $msg = "Your review has been saved";
}

echo json_encode(["list"=>$list, "msg"=>$msg]);

請記住將dataType放入Ajax:

type:"post",
dataType: "json"

然后,在成功函數中,您可以訪問vars: data.listdata.msg

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM