我使用PHP编写了一个程序,试图将数据存储到中,但是每当我使用这个url运行我的php脚本时:
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);
?>注意:我已经在这个DB下创建了registration_login数据库和成员表。
发布于 2013-04-09 08:26:39
为什么不返回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
那跟你的职位有什么关系?
https://stackoverflow.com/questions/15894578
复制相似问题