【问题标题】:input tag data insertion to Database using Ajax and php使用 Ajax 和 php 将标签数据插入到数据库
【发布时间】:2020-04-21 05:14:00
【问题描述】:

嗨,我尝试使用 Ajax 将 input 标记值插入 MySQL,因为大部分操作都是在 js 中进行的,我尝试参考 this。现在不知道发生了什么,它没有做任何事情我检查了控制台它在这里什么都没有显示......我在多个项目中尝试了这个代码并且它在那里工作。 任何帮助或替代方式将不胜感激。谢谢 这是我的代码文件。
test.php

<!DOCTYPE html>
<html>
<head>
<script src="./jquery-3.5.0.min.js"></script>
</head>
<body>
<input type="text" name="name" id="name" placeholder="enter name">
<script type="text/javascript">
    $(document).ready(function(){
    $("#name").on('keypress',function(e){
        if(e.which == 13){
            var strr = $("#name").val();
            console.log(strr);
            $.ajax({
                type: 'POST',
                url: 'testinsert.php',
                data: $('#name').val(),
                dataType: 'json',
                success: function( response){
                console.log( 'the feedback from your result.php: ' + response);
                }
            });
        }
    });
 });
</script>
</body>
</html>

testinsert.php

<?php 
if(isset($_REQUEST))
{
mysql_connect("localhost","root","");
mysql_select_db("usr");
error_reporting(E_ALL && ~E_NOTICE);

$email=$_POST['name'];
$sql="INSERT INTO at_user(user) VALUES ('$email')";
$result=mysql_query($sql);
if($result){
echo "You have been successfully subscribed.";
}
}
?>

这是控制台的输出 enter image description here

【问题讨论】:

  • 请使用整个表单标签而不是只输入,在表单编辑后提供id属性到表单
  • 查看浏览器的 DevTools Network 选项卡,了解哪些数据会发送到您的脚本。 $_POST['name'] 存在吗?你在哪里设置name
  • 考虑将问题行改写为问题。
  • @kerbholz 我检查了脚本中的错误 500,但我得到了参数 $_POST['name']
  • "但我得到了参数 $_POST['name']" 我敢打赌你没有:data: $('#name').val() 说你正在发送一个 字符串 i> 字段值为#name,此处没有“名称”键。看看@JatinKaklotar 的回答

标签: javascript php jquery mysql ajax


【解决方案1】:

从 ajax 脚本替换下面的行

来自

  data: $('#name').val(),

  data: {name : $('#name').val()},

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-12
    • 2013-05-15
    • 2017-04-07
    • 1970-01-01
    相关资源
    最近更新 更多