PHP使用特殊字符插入MySQL表格文本?

时间:2013-11-14 20:43:33

标签: php html mysql

我有一个非常奇怪的问题。

我有一个HTML帖子,从中发送数据到MySQL数据库。 这是我的HTML:

<form action="update_video_ads.php" method="post">
<textarea name="code" style="width:400px;height:100px;">[adminblk.code;block=table]</textarea>
<input type="submit" value="Update Information" name="submit">
</form>

当我键入ASDASDAS GASDG SDAD这样的普通字符并点击提交时,它会更新MySQL表格,但当我尝试在textarea中提交文本时出现问题<img src="asdasdas.jpg">

这是我的PHP部分代码:

$turn = addslashes($_POST["turn"]);
$seconds = addslashes($_POST["seconds"]);
$code = $_POST["code"];

            $register_sql="UPDATE videoads SET `enabled`='$turn',`seconds`='$seconds',`code`='".mysql_real_escape_string($_POST["code"])."' WHERE id='1'";          
            $insertAccount = mysql_query($register_sql);

为什么我输入特殊字符时无法更新字段? 当我键入正常消息时,它正在工作。

我的数据库表code已设置为text格式。

提前致谢!

1 个答案:

答案 0 :(得分:0)

它没有用,因为你的代码容易受到注入攻击,正如其他人指出的那样。有关如何运作的示例,请参阅this answer。您的数据库很容易被软化,被盗或两者兼而有之。

修改:使用MySQLiPDO。选择其中一个并按照教程进行操作,然后在遇到困难时再回来。