【问题标题】:using ajax to update data on modal form with php mysqli使用 ajax 使用 php mysqli 更新模态表单上的数据
【发布时间】:2018-07-29 17:12:52
【问题描述】:

我设法防止我的模态表单在使用提交值后关闭 ajax jQuery 无需页面刷新,

但现在我的问题是当我填写我的模态表单并单击提交以更新我的数据库中的数据时没有更新。

我认为我的 ajax 代码有问题。

希望你能帮助我。谢谢。

这是我的代码:

 <form class="needs-validation " id="contact-form" action="index13.php" method="post" novalidate >
</form>

这是我的 index13.php 代码:

<?php

 include_once ('connection.php');

if(isset($_POST['submit1']))
{

$username2 = $_POST['username2'];
$password1= $_POST['password1'];
$time=date("H:i:s");

$sql = "select * from visitor_att  where  uname = '$username2' and pass = '$password1'";
$result = mysqli_query($conn,$sql);
 $count = mysqli_num_rows($result);

if ($count == 0) {

echo "No Results";

    } else{
      while ($row = mysqli_fetch_array($result)) {
          $username2 = $row['uname'];
          $password1 = $row['pass'];
          $fname=$row['fname'];
          $lname=$row['lname']; 

         $InsertSql = "Update visitor_att set timeout = '$time' where  uname = '$username2' and pass = '$password1'";
        $res = mysqli_query($conn, $InsertSql); 

        }

         }



  }
?>

这是我的 ajax jQuery 代码:

<script>    
$(function() {


 var frm = $("#contact-form");

    frm.submit(function (e) {

        e.preventDefault();

        $.ajax({
            type: frm.attr("post"),
            url: frm.attr("action"),
            data: frm.serialize(),
            success: function (data) {
                console.log('Submission was successful.');
                console.log(data);
            },
            error: function (data) {
                console.log('An error occurred.');
                console.log(data);
            },
           });
        });
    });
</script>

当我在控制台上运行它时,它显示提交成功。 但没有数据插入数据库中。

【问题讨论】:

  • 您的数据是否显示在控制台中???
  • 提交后?没有显示数据
  • 在 var frm = $("#contact-form"); 之后使用控制台控制台(frm);让我知道
  • 数据是否进入数据库?
  • @Mohit Kumar 当我运行 var frm = $("#contact-form");它说 undefine ,并且 console(frm) frm 没有定义

标签: javascript php jquery ajax mysqli


【解决方案1】:

看起来您需要将 id 属性添加到表单中,因为您的 ajax 调用已绑定到它...

<form id="contact-form" class="needs-validation" action="index13.php" method="post" novalidate >

【讨论】:

  • 结果怎么会一样呢?您的 ajax 调用永远不会以您最初发布的方式触发。
  • 我的意思是我刚刚发布我的问题时忘记添加 id
  • 好吧,我想我当时浪费了我毫无意义的答案。下次您发帖时,请发布所有事实,以防止我们脸上沾到鸡蛋……(点赞就好了)。
  • 很抱歉。
  • 没关系,至少你下次知道。
猜你喜欢
  • 2016-07-18
  • 2016-10-12
  • 2019-03-24
  • 1970-01-01
  • 1970-01-01
  • 2015-01-31
  • 1970-01-01
  • 2014-09-11
  • 2015-12-12
相关资源
最近更新 更多