首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >希望在使用AJAX提交按钮时运行PHP查询

希望在使用AJAX提交按钮时运行PHP查询
EN

Stack Overflow用户
提问于 2018-06-13 05:33:24
回答 1查看 41关注 0票数 1

我想运行insert.php查询,如果"addUser"提交了按钮名,我不知道如何使用AJAX将addUser名称参数传递给insert.php文件,检查是否提交了按钮。如果删除insert.php文件中的 if语句,这是将用户插入数据库,但如果直接访问insert.php,则在表中插入空记录,如果直接访问insert.php,则希望防止在表中输入空记录。

index.html

代码语言:javascript
复制
<form method="post" id="addForm">
Username :<input type="text" name="username" id="userName" />
Passkey :<input type="password" name="passkey" id="passKey"/>
<br/>
<input type="submit" name="addUser" id="submitBtn" value="Inser New User"/>
</form>

<script>
    $("#addForm").submit(function(e){
        let userNameZ = $("#userName").val();
        let passKeyZ = $("#passKey").val();

          $.ajax({
            url:'insert.php',
            type:'POST',
            data: {userName:userNameZ,passKey:passKeyZ},
            success: function(resp) {
               if(resp == "inserted") {
                   $("#addForm").trigger("reset");
                    alert("New user inserted");
               } else {
                    alert("Something went wrong");
               }
            }
         });
    });
</script>

insert.php

代码语言:javascript
复制
<?php 
$conn = new PDO("mysql:host=localhost;dbname=test", "root", "");
if(isset($_POST['addUser'])){
    $userName = trim($_POST['userName']);
    $passKey = trim($_POST['passKey']);
        $query = "INSERT INTO users (username,passkey) VALUES (:userName,:passKey)";
        $stmt = $conn->prepare($query);
        $stmt->execute(array(':userName'=>$userName, ':passKey'=>$passKey));

    if($stmt) {
        echo "inserted";
    } else {
        echo "not inserted";
    }
}

?>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-13 05:36:52

将此if(isset($_POST['addUser'])){更改为if(isset($_POST['userName']) && isset($_POST['passKey'])){

或者在ajax中,更改

data: {userName:userNameZ,passKey:passKeyZ,addUser:1}, 通知: ,addUser:1

添加对您的评论的答复

如果我有超过10个值要提交呢?

您可以使用$("#addForm").serialize()并直接传递给数据。就像data: $("#addForm").serialize(),

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50829667

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档