Не знаю, почему я не смог получить сообщение sucess в JSON. Данные вставляются в базу данных хорошо, поэтому она работает, но сообщение обратного вызова (успех) нет. Я не знаю почему.Не могу получить сообщение об успешном завершении ajax
Этот файл должен помещать данные в базу данных.
include ("connect_to_mysql.php");
if (isset($_POST['register'])) {
$First_Name = mysql_real_escape_string($_POST['firstname']);
$Last_Name = mysql_real_escape_string($_POST['lastname']);
$Email = mysql_real_escape_string($_POST['email']);
$Password = mysql_real_escape_string($_POST['password']);
$Gender = mysql_real_escape_string($_POST['gender']);
$sql3 =mysql_query("SELECT email FROM members WHERE email = '$Email' ");
$result3= mysql_num_rows($sql3) ;
$found ='';
if ($result3 == 1) {
$found = "email already exist ! ";
} else {
mysql_query("INSERT INTO members (firstname, lastname,gender, email, password,bio_body, sign_up_date , account_type)
VALUES('".$First_Name."', '".$Last_Name."','".$Gender."','".$Email."','".$Password."','NULL' ,NOW() , 'a') ");
$found = "registered succefully !";
}
echo json_encode(array('returned_val' => "$found"));
//-- i have tried this also echo json_encode(array('returned_val' => $found));
}
это мой Аякса
$(document).ready(function(){
$('#register').click(function() {
$('#mydata').html('Saving your data...<img src="images/loading.gif" />');
$.ajax({
url: "sendata.php",
dataType: 'json' ,
data: {
firstname: firstname.value,
lastname: lastname.value,
email: email.value,
password: password.value,
gender: gender.value
},
type: 'POST',
success: function(data){
$('#mydata').html("<span style='font-size:18px; color: green;'> Your data is saved succefully! </span>").delay(3000).fadeOut('fast');
alert(data.returned_val);
alert (1);
}
});
});
});
OBS: о MySQL или некоторые вещи безопасности (passowrd) Я знаю, я буду фиксировать их, когда я исправить эту проблему.
спасибо за ваше время.
Edit: У меня нет никакого сообщения об ошибке
EDIT. HTML форма
<form action="" method="post" enctype="multipart/form-data">
<table width="100%" class="noborder" >
<tr>
<td width="23%" height="47" class="right">First Name:</td>
<td width="77%" class="left left_nowrap">
<input type="text" class="left left_nowrap tb10 border1" name ="firstname" id="First_Name" value="<?php echo $_SESSION['firstname']; ?>" />
</td>
</tr>
<tr>
<td height="47" class="right">Last Name:</td>
<td valign="middle" class="left left_nowrap">
<input type="text" class="left left_nowrap tb10 border1" name ="lastname" id="Last_Name" value="<?php echo $_SESSION['lastname']; ?>" /><br/>
</td>
</tr>
<tr>
........
<td valign="middle" class="left"><input id="register" name="register" type="button" class="submit1 tb10 border4" value="Sign - Up" /></td>
Добавьте обработчик ошибок, посмотрите, почему это ошибка. – epascarello
нет ошибки, данные вставляются, но не возвращают сообщение об успешном завершении –
Вы не анализируете данные после их получения в JavaScript, используйте 'JSON.parse' https://developer.mozilla.org/en-US/ docs/JavaScript/Reference/Global_Objects/JSON/parse или jQuery '$ .parseJSON()' http://api.jquery.com/jQuery.parseJSON/, в противном случае у вас есть только строка ... – xpy