我有一个带有文本框“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/"'
有没有其他人遇到过这种行为并想出如何解决它?
谢谢你的帮助
小智 3
是的,问题就在那里。
请注意,当对包含西里尔字符的字符串使用addslashes() 时,addslashes() 会完全混淆该字符串,使其无法使用。
解决方案的数量
1)使用mysql_real_escape_string而不是addslashes
2)尝试下面的代码,如str_replace
$myString = str_replace("'", "\'", $myString);
$myString = str_replace('"', "'+String.fromCharCode(34)+'", $myString);
Run Code Online (Sandbox Code Playgroud)
如果您还有问题,请告诉我。
问候
| 归档时间: |
|
| 查看次数: |
6927 次 |
| 最近记录: |