我正在用AngularJS構建一個簡單的註冊表單,並使用JQuery的$ .post()將數據發送到PHP頁面。當我發送數據時,它正確地插入數據庫。但是,我正在記錄的返回的json將我的數據字段顯示爲空。JQuery發佈到PHP插入數據,但json響應爲空
控制檯:
{"status":"success","email":null,"id":null,"sessionId":null}
的Javascript:
$.post("admin/addUser.php", {
email: form.email,
password: form.password
}).done(function(data){
console.log(data);
});
PHP:
$email = mysql_real_escape_string($_POST["email"]);
$password = md5(mysql_real_escape_string($_POST["password"]));
$sessionId = md5(uniqid(microtime()) . $_SERVER['REMOTE_ADDR'] . $_SERVER['HTTP_USER_AGENT']);
//Add this user to the database
$sql = mysql_query("INSERT INTO users (email, password, sessionId) VALUES ('".$email."', '".$password."', '".$sessionId."')");
if ($sql){
//Now find the user we just added
$getUser = mysql_query("SELECT * FROM users WHERE email = '".$email."' AND sessionId = '".$sessionId."'");
if ($getUser){
$row = mysql_fetch_array($getUser);
$user = array(
'status' => 'success',
'email' => $row['email'],
'id' => $row['id'],
'sessionId' => $row['sessionId']
);
echo json_encode($user);
}else{
$user = array(
'error' => mysql_error()
);
echo json_encode($user);
}
}else{
$user = array(
'error' => mysql_error()
);
echo json_encode($user);
}
對您的第一個答案+1努力:) –
感謝您的幫助。我加了'if(mysql_num_rows($ getUser)== 1)',它不計算。奇怪,因爲我沒有任何其他數據。我試圖插入數據,如果成功,檢索它並將其作爲json返回。 –
順便說一句我不明白爲什麼你插入後選擇數據? – iamawebgeek