我正在使用Laravel 5,并试图在数据库的字符串字段中插入一封带有+
符号的电子邮件。
不幸的是,+
正在被解码到数据库中的一个空间。我跟踪了代码,并确定它是正在将值更改为空格的pdo。
代码看起来像:
$bindings = $me->prepareBindings($bindings);
return $me->getPdo()->prepare($query)->execute($bindings);
如果我在两个语句之间打印$bindings
数组,则电子邮件为:email => email+test@email.com
。然而,当我查看数据库时,它显示:email test@email.com
我的主要问题是,我如何才能避免拉拉威尔的这种情况?或者更具体地说,如何避免使用pdo?
在前端,我使用这个ajax调用:
$.ajax({
url: "/customers/"+$("#Id").val(),
data:data,
type: "PUT",
success: function(html) {
...
},
error: function(response){
...
}
});
尝试通过在+符号前面添加反斜杠来转义+符号。
email'+test@email.com