代码是
if($_POST['update_id'])
{
$sql = '
UPDATE
affiliate_updates
SET
update_subject="' . $_POST['update_subject'] . '",
update_body="' . $_POST['update_body'] . '"
WHERE
update_id="' . $_POST['update_id'] . '"
LIMIT 1
';
mysql_query($sql);
header('Location: affiliate_updates?update_id=' . $_POST['update_id']);
exit;
}
Run Code Online (Sandbox Code Playgroud)
如何修剪上面的代码或简化代码?
任何想法或示例代码请告诉我.
如何使用SQLinjection上面的代码.有人给我看示例代码吗?
您可以使用PHP的PDO库,它是数据库的OOP处理程序.优点是你可以根据需要更改数据库类型,whitout必须替换每个mysql_query.
你的代码也做了很糟糕的事情.您在查询中使用未经验证的用户输入.使用准备好的PDO语句.或者使用mysql_real_escape_string($_POST['somevar']).
这与PDO相同:
$db = // already instanced somewhere earlier (PDO Instance)
$query = $db->prepare('UPDATE affiliate_updates SET update_subject = ?, update_body = ? WHERE update_id = ? LIMIT 1');
$query->execute(array($_POST['update_subject'], $_POST['update_body'], $_POST['update_id']));
header('Location: affiliate_updates?update_id=' . $_POST['update_id']);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
112 次 |
| 最近记录: |