2013-04-09 2 views
0

Я сделал программу с помощью PHP и пытается хранить данные в локальной Xampp сервера, но всякий раз, когда я запускаю мой PHP скрипт, используя этот адрес:Преобразовать mysql_ * для PDO

 http://127.0.0.1/test.php 

Получение сообщение об ошибке: {» StatusID «:» 0" , „Ошибка“: „Невозможно сохранить данные“}

Пожалуйста, кто-то поможет мне в этом, как я могу сделать это полезно для меня, пожалуйста, проверьте ниже PHP скрипт:

<?php 

$objConnect = mysql_connect("localhost","root",""); 
mysql_error($ObjConnect); 

$objDB = mysql_select_db("registration_login"); 
mysql_error($ObjDB); 

$strUsername = $_POST["sUsername"]; 
$strPassword = $_POST["sPassword"]; 
$strName = $_POST["sName"]; 
$strEmail = $_POST["sEmail"]; 
$strTel = $_POST["sTel"]; 

/*** Insert ***/ 
$strSQL = "INSERT INTO member (Username,Password,Name,Email,Tel) 
VALUES (
'".$strUsername."', 
'".$strPassword."', 
'".$strName."', 
'".$strEmail."', 
'".$strTel."' 
) 
"; 

$objQuery = mysql_query($strSQL); 
mysql_error($ObjQuery); 

if(!$objQuery) 
{ 
$arr["Status"] = "0"; 
$arr["Message"] = "Cannot Save Data!"; 

echo json_encode($arr); 
exit(); 
} 
else 
{ 
$arr["Status"] = "1"; 
$arr["Message"] = "Register Successfully!"; 

echo json_encode($arr); 
exit(); 
} 

mysql_close($objConnect); 

?> 

Примечание: Я создал registration_login базы данных и член таблицы под этой БД ..

+3

Добавить запись или что-то, чтобы захватить возвращаемое значение 'mysql_error()', если произошла ошибка. В противном случае отладка невозможна. И, пожалуйста, не используйте 'mysql_ *' больше. –

ответ

0

Почему вы не возвращает ошибку сообщенный MySQL или зарегистрировать ее где-нибудь?

$ objConnect = mysql_connect (DB_HOST, DB_USER, DB_PASSWORD);

Вы забыли проверить возвращение возвращаемого значения, чтобы увидеть, если это было успешным - если это не удалось, причина в mysql_error()

$ objDB = mysql_select_db (DB_DATABASE);

Вы забыли проверить возвращение возвращаемого значения, чтобы увидеть, если это было успешным - если это не удалось, причина в mysql_error()

$ objQuery = mysql_query ($ strSQL);

По крайней мере, на этот раз вы проверяете возвращаемое значение, но вы не проверяете, что произошло.

Кстати, ваш скрипт широко открыт для SQL-инъекции.

Преобразовать mysql_ * для PDO

Что, что надо делать с вашей должности?

Смежные вопросы