是否有可能以任何方式使这个MySql代码不可注入?

时间:2013-12-31 04:01:55

标签: php html mysql database mysqli

您好,感谢大家帮我解决当前的问题,如果可以的话,您是否可以检查此代码是否有任何漏洞?

  $sql="INSERT INTO  `paypal_mysqltable_name` (datenow,    item_name,   item_number,       payment_status,    payment_amount,   payment_currency,  payer_email,     payment_type,   custom, 
invoice, first_name, last_name, address_name, address_country, address_country_code, address_zip, address_state, address_city, address_street) 
            VALUES (CURRENT_TIMESTAMP,'item_name','$item_number','$payment_status', '$payment_amount','$payment_currency','$payer_email', '$payment_type','$custom' ,'$invoice','$first_name','$last_name','$address_name','$address_country','$address_country_code','$address_zip','$address_state','$address_city','$address_street')";
  $result=mysql_query($sql,$link);

大家好抱歉我不习惯SQL和php我把我的$ link转换成MYSQLi就像推荐的那样但是我写这个格式时出现了问题。

    $stmt = $mysqli->prepare("

任何人都可以提供帮助

2 个答案:

答案 0 :(得分:0)

首先,不推荐使用 mysql_* 功能。请切换为 MySQLi PDO

来到你的问题..

似乎您担心SQL注入问题,如果您使用 PreparedStatements ,您可以很好地避免它们(SQLi),因为转义是自动完成的。

答案 1 :(得分:0)

将此mysql-real-escape-string用于字符串,将此intval用于整数

为了更安全地使用此PDO