jquery特殊字符保存在mysql,php中

时间:2009-10-07 20:19:12

标签: jquery

我正在尝试使用以下格式“+1234987 ....”在MYSQL表中保存手机号码,但是当我保存号码时,“+”符号被替换为空格。

我使用以下代码:

var mobile     = $('#mobile').attr('value');
$.ajax({
type: "POST",
url: "save_process.php",
data: "mobile="+ escape(mobile) ,
//data: "mobile="+ mobile ,
success: function(html){
if (html==1){
$('div.saving').hide();
$('div.success').fadeIn();
}

无论有没有escape()我都试过 - 结果相同。如何使用“+”符号保存?

由于

1 个答案:

答案 0 :(得分:2)

  

“mobile =”+ escape(移动)

escape是用于编码URI参数的错误函数。它是一种特殊的JavaScript编码方案,看起来有点像URL编码,但不是那个或实际上任何其他Web标准。它在处理非ASCII字符方面有所不同,并且你猜对了,加号。

事实上,任何事情都使用它几乎总是错误的功能,任何时候你应该立即怀疑它。在encodeURIComponent发明之前,它曾经用于Netscape时代的URL编码,但即使在那时它也完全被破坏了。

"mobile="+ encodeURIComponent(mobile)