特殊字符插入MySQL

时间:2014-02-23 21:43:46

标签: php mysql

您好我正在尝试将特殊字符插入MySQL,因为我无法使用它们。

这是我到目前为止所得到的......

   mysql_query("UPDATE profiles SET .mysql_real_escape_string playground='$_POST[playground]' WHERE
     username='$_SESSION[membersusername]'");

文本表格是

<form method="POST" action="playground.php?action=edit">


            <table width="100%" border="0" align="center">
  <tr>
    <td width="341">Playground<br><textarea name="playground" id="maxLength" rows="5" cols="50"><? echo $playground ?></textarea></td>
  </tr>
  <tr>
    <td><input type="submit" name="submit" value="Update" /></td>
  </tr>
          </table>

  </form>   

希望有人会帮忙。

3 个答案:

答案 0 :(得分:0)

尝试使用此

 $playground = mysql_real_escape_string($_POST[playground]) ;
 mysql_query("UPDATE profiles SET  playground='$playground' 
              WHERE username='".$_SESSION['membersusername']."' ");

更改该行

 <td width="341">Playground<br><textarea name="playground" id="maxLength" rows="5" cols="50"><? echo $playground ?></textarea></td>

  <td width="341">Playground<br><textarea name="playground" id="maxLength" rows="5" cols="50"></textarea></td>

答案 1 :(得分:0)

您的查询中存在语法错误,因此请按以下方式更改

mysql_query("UPDATE profiles SET playground='".mysql_real_escape_string($_POST['playground'])."' WHERE   username='".$_SESSION['membersusername']."'");

作为旁注,我会告诉您使用PDOmysqli的预准备语句,您的代码实际上非常容易受到mysql injectionslearn more here

的攻击

答案 2 :(得分:0)

查询不正确,应该是

mysql_query("UPDATE profiles 
SET  playground='".mysql_real_escape_string($_POST[playground])."' 
WHERE
username='".$_SESSION[membersusername]."'");

你应该如何停止使用mysql_ *函数,因为它们已被弃用并开始使用mysqli_ *函数或PDO和prepare语句。