标签: addslashes

使用HTML echo中的变量转义双引号

对于包含HTML的echo中的变量,我在哪里添加斜杠来转义双引号?

例:

echo "<input type=\"hidden\" name=\"id\" value=".$row['id']." />";
Run Code Online (Sandbox Code Playgroud)

这部分:

value=".$row['id']."
Run Code Online (Sandbox Code Playgroud)

html php mysql variables addslashes

27
推荐指数
1
解决办法
7万
查看次数

如何从PHP中为javascript转义字符串?

让我们想象一下表单编辑器,它可以编辑可用的值.如果数据包含"字符(双引号),它"破坏"HTML代码.我的意思是,让我们检查代码:所以我生成HTML:

onclick="var a = prompt('New value: ', '<?php echo addslashes($rec[$i]); ?>'); if (a != null)....

它导致了

onclick="var a = prompt('New value: ', 'aaaa\"aaa'); if (a != null) { v....

这使得JS无法工作,因此它会破坏代码.使用单个qoute,'它可以正常工作.mysql real escape做同样的事.如何转义任何字符串,以便它不会破坏javascript?


json_encode看起来还不错,但我一定做错了,它仍然很糟糕:继续看看Firefox如何看待它 - 它插入了一个"糟糕"的双引号!值只是一个简单的数字:

http://img402.imageshack.us/img402/5577/aaaahf.gif

我曾经用过:

('Ird be az új nevet:', <?php echo json_encode($rec['NAME']); ?>); if (a) { 
Run Code Online (Sandbox Code Playgroud)

javascript php escaping addslashes

14
推荐指数
2
解决办法
5万
查看次数

如何将django模板中的多行html包含到javascript变量中

从Django模板,我想包含一个文件的html片段,说mysnippet.html:

<div>
    blah
</div>
Run Code Online (Sandbox Code Playgroud)

进入一个javascript变量:

<script type="text/javascript">
     var myvar = {% include 'mysnippet.html' %}
</script>
Run Code Online (Sandbox Code Playgroud)

问题是新线路需要转义.否则,Javascript会抱怨"未终止的字符串文字".

我知道可以添加斜杠,{{x|addslashes}}但我不知道如何为{% include %}标签做.

django django-templates addslashes

12
推荐指数
1
解决办法
4549
查看次数

Htmlentities vs addslashes vs mysqli_real_escape_string

我一直在阅读有关保护PHP应用程序的一些内容,在我看来,这mysqli_real_escape_string是在将数据插入MySQL表时使用的正确函数,因为这addslashes可能会导致智能攻击者发生一些奇怪的事情.对?

但是,有一件事令我感到困惑.我似乎记得被告知addslashes比将htmlentities用户输入的数据回复给用户以保护他们的数据更好,但似乎addslashes是有漏洞的人.这是真的,还是我记错了?

php security mysql-real-escape-string addslashes

7
推荐指数
2
解决办法
1万
查看次数

如何防止数据库向引号添加斜杠

我知道这听起来很普通而且非常微不足道,但我在这里遇到了挑战.我有一个Zend/Doctrine的网站,我使用ckeditor进行后端管理.上传网站后,我意识到在编辑测试期间,网站的外观和感觉都搞砸了.

在firebug的帮助下,我看到html上都有斜线.在内联版后,外观恢复正常.有这么多文件,我无法想到在从mysql输出数据之前做其他解码.

我有什么选择来解决这个问题.该网站已经上线,我觉得有点不自然.任何人都可以提示吗?谢谢

php mysql hosting zend-framework addslashes

7
推荐指数
3
解决办法
1万
查看次数

PHP的addslashes是否容易受到sql注入攻击?

可能重复:
mysql_real_escape_string()做了什么,addslashes()没有?

我一直在评论关于PHP的addslashes函数如何/为什么容易受到sql注入攻击的文章.我读过的所有内容都说特定的mysql编码类型存在问题(default-character-set = GBK),或者如果启用magic_quotes则存在问题.但是,在这种情况下,我无法摆脱addslashes()函数并执行恶意操作 - 例如以管理员身份登录.

    $user = addslashes($_POST['user']);
    $pass = sha1($_POST['pass']);
    $sql = "SELECT * FROM admins WHERE user = '".$user."' AND `pass` = '".$pass."'";

    $nums = mysql_num_rows(mysql_query($sql));

    if($nums==1){
    $_SESSION['admin_user'] = $user;
    $_SESSION['admin_pass'] = $pass;
Run Code Online (Sandbox Code Playgroud)

这是对客户的(次要)安全审核,我会建议他们使用PDO,但我需要显示他们当前的漏洞.

参考文献:

php addslashes

6
推荐指数
1
解决办法
7516
查看次数

PHP的addslashes和mysql(i)_escape_string有什么区别?

可能重复:
mysql_real_escape_string VS addslashes

如果他们不完全相同,有什么区别?MySQL查询中值的分隔符'不是吗?或许"也可以使用addslashes进行转义.

在我理解的其他数据库引擎中(并且肯定在像PDO这样的db包装器中),但为什么有这么多人如此擅长使用mysql(i)_escape_string而不是addslashes?

php mysql security mysql-real-escape-string addslashes

5
推荐指数
2
解决办法
1万
查看次数

使用utf和单引号时可以绕过addslashes吗?

我正在尝试验证在脚本上使用addslashes是否可被利用,众所周知,不应该使用addslashes,但是问题是,它总是可被利用吗?

我发现了大量关于在字符集不是 utf8(使用双字节转换)以及变量被“”括起来的两种情况下滥用 addslashes 的信息

那么,当上述情况都没有发生时,是否可以绕过addslashes?这是我一直在测试的代码:

带有数据库转储的 data.sql 文件:

CREATE TABLE IF NOT EXISTS `test` (
  `user` varchar(25) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

INSERT INTO `test` (`user`) VALUES
('admin'),
('user');

mysql -u test -ptestpw test < data.sql
Run Code Online (Sandbox Code Playgroud)

index.php 放置在服务器中

<?php
  //Server script the receives content via post
  mysql_connect("localhost","test","testpw");
  mysql_select_db("test");
  $user=addslashes($_POST['username']);
  $query="SELECT * FROM test WHERE user='".$user."'";
  $q=mysql_query($query) or die (mysql_error());
  $num_rows = mysql_num_rows($q);
  echo "Listed rows: $num_rows";
  if ($num_rows > 0) {
        $a=mysql_fetch_array($q);
        print_r($a);
  }
?> …
Run Code Online (Sandbox Code Playgroud)

php security addslashes

5
推荐指数
1
解决办法
9237
查看次数

如果字符串以数字开头并包含引号,则 PHP 加斜杠无法按预期工作

我有一个带有文本框“size_txt”的表单,它存储一个表示大小选择的字符串。

<input type="text" name="size_txt" id="size_txt" style="display: none;" /> 
Run Code Online (Sandbox Code Playgroud)

该值被发布到另一个页面并通过此代码检索

$new_size=addslashes($_POST['size_txt']);
Run Code Online (Sandbox Code Playgroud)

不幸的是它需要存储英寸的缩写,即“引号

如果字符串是 '10" medium' 那么 $new_size 的值是 '10'

但是,如果字符串是 'medium 10"' 那么 $new_size 的值是 'medium 10/"'

有没有其他人遇到过这种行为并想出如何解决它?

谢谢你的帮助

php addslashes

5
推荐指数
1
解决办法
6927
查看次数

addslashes JavaScript等价物

我正在寻找一个与PHP相当的JavaScript版本addSlashes.

我发现有很多版本,但它们都没有处理\b,\t,\n,\f\r.

http://jsfiddle.net/3tEcJ/1/

要完成,这个jsFiddle应该警告: \b\t\n\f\r"\\

javascript regex escaping addslashes

3
推荐指数
1
解决办法
6259
查看次数