0

嗨,我在向我的 Sql 脚本添加变量时遇到问题,如果我将 $safe 替换为 'text' 它工作正常,我猜这是一个简单的语法问题。我希望有人可以提供帮助,因为我是一个新手!

<?
$ORDERID = 'LH-PAY-'.rand(10000000,99999999);
$safe - mysql_escape_string($ORDERID);

mysql_connect("localhost", "youthtra_wp1", "pass") or die(mysql_error());
mysql_select_db("youthtra_wp1") or die(mysql_error());

$query = "INSERT INTO tblPayments (PaymentID,Created,Status,Type,FlgID,WpUser,FullAmount,InsuranceAmount) VALUES ('".$safe."',now(),'Started','edpq','12345678','LH23456','499.99','19.99' )";
mysql_query($query);
echo 'ok';
4

2 回答 2

0

几点:

a)$safe不是。mysql_escape_string()使用不安全。这就是mysql_real_escape_string()存在的原因。
b)无论如何,您都不应该使用 mysql_*() 函数
c) 您只是假设您的查询将始终成功,并且故意忽略 mysql_query() 的返回值,如果/当事情失败时,它可以帮助您。例如,您的代码至少应为:

$result = mysql_query(...);
if ($result === FALSE) {
   die(mysql_error());
}
于 2013-09-25T15:12:20.297 回答
0

只需修复第3 行的-for =

$safe - mysql_escape_string($ORDERID);
于 2013-09-25T15:13:05.013 回答