%cd转换为Í;在ajax中调用php
我有一个奇怪的问题,我完全不知道如何解决 我有一个小小的AJAX调用:%cd转换为Í;在ajax中调用php,php,jquery,char,Php,Jquery,Char,我有一个奇怪的问题,我完全不知道如何解决 我有一个小小的AJAX调用: $('#toexcel').live("click",function() { var sql = grid.data().sql; $.ajax({ url: "toExcel.php", data: "sql="+sql, success: function(response){
$('#toexcel').live("click",function() {
var sql = grid.data().sql;
$.ajax({
url: "toExcel.php",
data: "sql="+sql,
success: function(response){
window.location.href = response.url;
}
});
alert(sql);
});
});
它将sql
查询从grid
对象传递到toExcel
toExcel
使用PHPExcel
对象输出excel文件
现在:
当警报弹出时,它有一个外观正常的查询…如“%cdviled%”…
但是,当我在toExcel.php中访问这个查询时,它看起来像是…像“Íviled04%”
查询显然失败了
为什么???????PHP是如何将
%cd
解释为。在发送ajax请求之前,您需要先运行参数
尽管如此,通过ajax发送搜索词并让PHP在服务器端组装SQL,您可能会得到更好(更安全)的结果 PHP将
%cd
解释为。在发送ajax请求之前,您需要先运行参数
尽管如此,通过ajax发送搜索词并让PHP在服务器端组装SQL,您可能会得到更好(更安全)的结果
%cd
是Í
的有效URL编码表示形式,PHP也会这样处理它
解决办法很简单。更改:
data: "sql="+sql,
致:
%cd
是Í
的有效URL编码表示形式,PHP也会这样处理它
解决办法很简单。更改:
data: "sql="+sql,
致:
@DaveRandom您也可以从我这里得到+1,因为我提供了一个示例(:感谢Phoenix的首创和解释,但我会接受Dave的回答,因为他通过直接提供工作代码来欣赏我的懒惰=)+1me@DaveRandom我给你举了个例子,你也得到了+1(:感谢Phoenix的首肯和解释,但我会接受Dave的回答,因为他通过直接提供工作代码来欣赏我的懒惰=)+1来自meit's strange我以前从未遇到过这个问题。我用谷歌搜索了%cd,但它没有显示任何相关信息,然后搜索引擎也不喜欢像%=)@Elen这样的特殊字符。如果你用谷歌搜索了
Í
并查看了它生成的URL,可能会给你一个线索…;-)奇怪的是,我以前从未遇到过这个问题。我用谷歌搜索了%cd,但它没有显示任何相关信息,然后搜索引擎也不喜欢像%=)@Elen这样的特殊字符。如果你用谷歌搜索了Í
并查看了它生成的URL,可能会给你一个线索…;-)