gpt4 book ai didi

php - 使用 php、json 和 jquery 插入数据库

转载 作者:行者123 更新时间:2023-11-29 22:38:54 25 4
gpt4 key购买 nike

我想使用 php 服务和 json 将数据插入到 mysql 数据库,但是当我单击时没有任何反应,它没有显示任何错误,没有消息,并且数据没有添加到数据库,请帮忙这是保存功能

function save(){
var eml = document.getElementById("tbemail").value;
var mp = document.getElementById("tbmdp").value;
var data = {email: eml, mdp: mp}

$.ajax({
url:"http://localhost:800/test/insert.php",
type: 'POST',
data: data,
dataType: 'json',
success: function()
{alert("success");}
error: function()
{alert("fail");}
});
}

这是我的 php 文件 insert.php

<?php 
$json = $_POST['data'];
$new=json_decode($json, true);

$conn= mysqli_connect("localhost","root","") or die ("could not connect to mysql");

mysqli_select_db($conn,"bd") or die ("no database");



$sql = "INSERT INTO user (email,mdp) VALUES ($new['email'],$new['mdp'])";

if (mysqli_query($conn, $sql)) {
echo "created ";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}

?>

最佳答案

您的 $_POST 数组中没有“data”键,您有“email”和“mdp”,您可以直接访问它们:

$email = mysqli_real_escape_string($_POST['email']);
$mdp = mysqli_real_escape_string($_POST['mdp']);

这种方式没有传递json,同样当你有get字符串时,也不需要解析它。打开错误报告,然后你会看到 $_POST['data'] 未定义。

顺便说一句,使用 mysqli_real_escape_string 来清理输入以防止注入(inject)。

关于php - 使用 php、json 和 jquery 插入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29443011/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com