0

我已经使用 PHP 编写了一个程序并尝试将数据存储到本地服务器 Xampp 中,但是每当我使用这个 url 运行我的 php 脚本时:

        http://127.0.0.1/test.php

收到错误消息:{"StatusID":"0","Error":"无法保存数据!"}

请有人帮助我,我怎样才能使它对我有用,请检查下面的 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数据库和成员表。

4

1 回答 1

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

和你的帖子有什么关系?

于 2013-04-09T08:26:39.663 回答