【发布时间】:2015-04-08 04:45:58
【问题描述】:
我想将数据添加到我的数据库中,方法是作为 json 字符串传递,然后使用 php 我所做的,但在数据库中添加一个空行而不是添加我发送的数据,然后我收到警报(“失败”)请留言错在哪里 这是我的保存功能
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',
dataType: 'json',
data: JSON.stringify(data),
contentType: "application/json; charset=utf-8",
success: function (data) {
alert('success');
},
error: function () {
alert("fail");
}
});
这是我的 php 文件 insert.php
<?php
$json = isset($_POST['data']) ? $_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']."') ";
$insert=mysqli_query($conn, $sql);
if ($insert) {
echo "created ";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
?>
【问题讨论】:
-
你的 json 字符串的结构是什么?
-
我相信使用 stringify 是不必要的,你不需要使用 json decode