我不明白爲什麼我的代碼不工作。我只是從表單中取值,我想用JSON和AJAX將它們插入到數據庫中。有什麼我做錯了嗎?發送JSON到位於服務器上的PHP文件
$(document).ready(function() {
$("#insert").click(function() {
var email = $("#email").val();
var password = $("#password").val();
var name = $("#name").val();
var bio = $("#bio").val();
var postData = {"email":email,"password":password,"name":name,"bio":bio};
$.ajax({
type: "POST",
dataType: "json",
url: "http://**************/php-code/insert.php",
data: {myData:postData},
crossDomain: true,
cache: false,
beforeSend: function() {
$("#insert").val('Connecting...');
},
success: function(data) {
if (data == "success") {
alert("inserted");
$("#insert").val('submit');
} else if (data == "error") {
alert("error");
}
}
});
return false;
});
});
和PHP文件,該文件在服務器上坐:
include "db.php";
if(isset($_POST['myData'])) {
$email=$_POST['email'];
$password=$_POST['password'];
$name=$_POST['name'];
$bio=$_POST['bio'];
$q=mysqli_query($con,"INSERT INTO 'user' ('email','password','name', 'bio') VALUES ('$email','$password','$name','$bio')");
if($q)
echo "success";
else
echo "error";
}
你有包括jquery嗎? –
[Little Bobby](http://bobby-tables.com/)說*** [你的腳本存在SQL注入攻擊風險。](http://stackoverflow.com/questions/60174/how-can- ***)瞭解[MySQLi](http://php.net/manual)[準備](http://en.wikipedia.org/wiki/Prepared_statement)聲明/en/mysqli.quickstart.prepared-statements.php)。即使[轉義字符串](http://stackoverflow.com/questions/5741187/sql-injection-that-gets-around-mysql-real-escape-string)是不安全的! [不要相信它?](http://stackoverflow.com/q/38297105/1011527) –
**不要存儲純文本密碼!**請使用PHP的[內置函數](http:// jayblanchard。 net/proper_password_hashing_with_PHP.html)來處理密碼安全性。如果您使用的PHP版本低於5.5,則可以使用'password_hash()'[兼容包](https://github.com/ircmaxell/password_compat)。確保你*** [不要越獄密碼](http://stackoverflow.com/q/36628418/1011527)***或在哈希之前使用其他任何清理機制。這樣做*更改密碼並導致不必要的附加編碼。 –