【问题标题】:Save DB with php function stripslashes使用 php 函数 stripslashes 保存数据库
【发布时间】:2012-10-05 18:43:48
【问题描述】:

我在数据库上保存 $p 时遇到了一个问题。如果我保存 $_POST["content"] 未修改,它就可以工作。 但是如果我用stripslashes修改它是行不通的。我不明白原因。

$_POST["content"] is text from function innerHTML
mysql_connect("XX","XX","XX");
mysql_select_db("XX");
$p=stripslashes($_POST["content"]);
mysql_query("UPDATE TEXTO SET VALOR='.$p.' WHERE id=2");

【问题讨论】:

  • 必填PDOremark... PDO,使用它。

标签: php html database sql-update


【解决方案1】:

您不想在更新数据库之前去掉斜杠,您实际上想要做相反的事情。我会推荐

$p=mysql_real_escape_string($_POST["content"]);

【讨论】:

    【解决方案2】:

    这是错误所在:

    mysql_query("UPDATE TEXTO SET VALOR='.$p.' WHERE id=2");
    

    您不需要$p 周围的句点。你可以这样做:

    mysql_query("UPDATE TEXTO SET VALOR='$p' WHERE id=2");
    

    或者:

    mysql_query("UPDATE TEXTO SET VALOR='".$p."' WHERE id=2");
    

    字符串周围的双引号将在计算时插入变量。

    但是

    您真的应该考虑放弃使用 mysql_* 函数,因为它们已被弃用; PDOmysqli_* 都可以让您编写更安全的代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-04
      • 2015-05-16
      相关资源
      最近更新 更多