标签: urlencode

JQUERY AJAX,发送到服务器的空间问题,为什么?

我正在使用以下代码发布到服务器,然后将其发送到MYSQL查询以通过搜索查找匹配项.

$.ajax({
url: '/search/spotlight/',
data: "q=" + $(this).val(),
success: function(data) {
}
});
Run Code Online (Sandbox Code Playgroud)

当Q的val中有空格时,就会产生问题.我想知道我是否正确处理了这个问题?我需要在AJAX调用中对值进行编码吗?或者这是我的后端问题,即ColdFusion

现在JQUERY将以下内容发布到服务器:/ search/spotlight /?q = FirstName%20LastName

这是正确的吗?

ajax coldfusion jquery urlencode urldecode

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

Apache:mod_rewrite:URL中的Spcaes和特殊字符不起作用

我正在使用APACHE:mod_rewrite来定义一组用于重写URLS的规则

我希望此链接显示为

/myDIR/walls.php?f=All&of=0&s=Newest - > All.html

所以我使用以下规则

来自(.htaccess)的文字

RewriteEngine  on
RewriteBase    /myDIR/   
RewriteRule ^All\.html$  papers.php?f=All&of=0&s=Newest
Run Code Online (Sandbox Code Playgroud)

现在这些正在传递的变量 f=All of=0 s=Newest被用于查询,显然和其中一个变量,即f有时具有空格和特殊字符的值,我无法避免这种情况,因为数据库已经就位且所有我正在重写URL ....

现在,当我尝试定义这样的规则时

我希望此链接显示为

/myDIR/walls.php?f=Characters & Supers&of=0&s=Newest - > Characters & Supers.html

这是错的,我知道因为不应该有任何空格..所以为了使它正确我定义这样的规则

RewriteRule ^Characters%20%26%20Supers\.html$  papers.php?f=Characters%20%26%20Supers&of=0&s=Newest
Run Code Online (Sandbox Code Playgroud)

它让我定义规则,但当我点击我的链接时,我得到 404未找到错误"在此服务器上找不到请求的URL/wallz/Characters&Supers.html."

问题:做什么?

我的猜测是我不应该在.htaccess里面做HTML URL编码

apache mod-rewrite urlencode special-characters

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

urlencode过滤器在django模板中不起作用

我在Apache下使用django.当我urlencode在django模板中使用时,它根本不会包含这样的东西{{value|urlencode}}这里是我完整的锚标签

<a href="/mysite/comment/{{i.comment_id|urlencode}}">Comment</a>

有人可以帮忙吗?有没有办法摆脱这个?

在此先感谢 - 维克拉姆

django templates urlencode

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

PHP压缩字符串

我有一个数组转储,我想压缩成一个字符串,可以通过网址发送到另一个部分并解码.

目前我正在gzcompressing它和base64编码它.但它似乎没有起作用.bool(false)当我在接收端使用它时它会返回.

gzcompress(json_encode($images),9))

编码数据的示例

string(214) "{"1":null,"2":null,"3":null,"4":"..\/uploads\/2462df38db374653720daa42b7aefec4\/cv4slm3fr8_c.png","5":"..\/uploads\/2462df38db374653720daa42b7aefec4\/vzh72hwqvk_c.png","6":null,"7":null,"8":null,"9":null,"10":null}"
Run Code Online (Sandbox Code Playgroud)

这些null值用相似的数据填充.我需要通过url将这些数据传递给另一个脚本.

注意:打开的url是在一个模态框内,因此我无法POST到它.

php compression url encoding urlencode

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

使用urldecode()会导致MySql错误

我需要通过我的MySQL查询的URL传递特殊符号.例如,我需要一个类似于以下内容的URL:

www.example.com/index.php?q=AND name LIKE '%hi%'
Run Code Online (Sandbox Code Playgroud)

当我第一次尝试它时,我得到了406错误.我查了一下,显然我必须使用urlencode()urldecode().我把它们放进去了,406错误消失了,但后来我得到了一个MySQL错误:

mysql_fetch_array(): supplied argument is not a valid MySQL result resource
Run Code Online (Sandbox Code Playgroud)

通常当我得到这些时,这意味着查询编写不正确.所以我回应了MySQL查询,一切看起来都很好.我甚至删除了urldecode()并将硬编码转换为我希望传递给页面的变量,并且MySQL错误消失了.但是,使用urldecode()和不使用它们的查询完全相同,所以我有点困惑.

我走上了php.net文档页面urldecode(),并有一个警告,说的一样使用_GET,并urldecode()一起可能导致意想不到的事情,这_GET已经起到解码器(或至少这就是我理解的措辞),所以我删除urldecode()但仍留在_GET,并导致文本未被解码,所以我想我没有正确解释文档.

urldecode()不是与MySQL查询兼容?我很确定这是编码/解码的问题,因为我已经用绕过编码/解码的硬编码信息测试了我的代码,并且它工作正常.也许urldecode()是以某种方式将字符转换为看起来相同但内部不同的特殊字符,因此MySQL无法读取它们?

php mysql urlencode urldecode

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

.htaccess url编码的字符串没有正确传递给页面

我在.htaccess中有一个重写规则

RewriteRule ^page/(.*)$ my-php-page.php?cid=$1

我传递的编码字符串包含像=和的字符+- 这是编码的字符串;

V1ihnKpip6WpnY7Wm5zn2+6YUtLf2KCh4eKY

当它在完整的URL中时

http://www.example.com/my-php-page.php?cid=V1ihnKpip6WpnY7Wm5zn2+6YUtLf2KCh4eKY

现在这不符合+标志.所以我想发送cid随后变成的urlencoded;

http://www.example.com/my-php-page.php?cid=V1ihnKpip6WpnY7Wm5zn2%2B6YUtLf2KCh4eKY

+标志变成%2B.这很好用,除非我通过.htaccess中的RewriteRule尝试这个 - 它不起作用.所以URL就是

http://www.example.com/page/V1ihnKpip6WpnY7Wm5zn2%2B6YUtLf2KCh4eKY

mypage.php文件实际上接收了cid由于V1ihnKpip6WpnY7Wm5zn2 6YUtLf2KCh4eKY某种原因替换%2B为空格.

任何想法为什么它可能会这样做?我该如何解决呢?非常感谢您的帮助.

编辑

我刚刚找到了这个解决方案 - 带有urlencode和"&"bug的PHP $ _GET var - 但是我想知道是否有更优雅的解决方案而.htaccess不是urlencode两次使用字符串?

php apache .htaccess mod-rewrite urlencode

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

与JavaScript中的encodingURIComponent相反

encodeURIComponentJavaScript中有相反的API 吗?假设您有一个字符串,其中有一堆%25等用于URI。是否有API可以将un-encodeURI取消编码?

谢谢。

javascript urlencode

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

在codeigniter中使用加密时忽略斜杠

我有加密/解密电子邮件的问题,我只是发送这样的邮件链接

http://www.domain.com/mycontroller/myfunction/McvBsce........etc
Run Code Online (Sandbox Code Playgroud)

最后一段实际上是一个加密的电子邮件ID,当我点击此链接时,我解密了这封电子邮件并更新了我的数据库中的stus.所有操作都正确.

问题:当这样的网址时

http://www.domain.com/mycontroller/myfunction/McvB/sce
Run Code Online (Sandbox Code Playgroud)

它显示404错误,因为斜杠包含在生成的加密密钥中.如何在生成加密时忽略斜杠,这是我的主要问题,其余工作正常.

php encryption codeigniter urlencode urldecode

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

如何正确地用Javascript对数组进行URL编码?

我发现它encodeURIComponent在大多数情况下都有效,但是当我传递数组时,它无法按预期工作。这是我的代码:

var orderArray = [223746903996283,223525203804543]
var orders = encodeURIComponent(orderArray);
Logger.log(orders);
Run Code Online (Sandbox Code Playgroud)

orders值是223746903996283%2C223525203804543

预期值为%5B223746903996283%2C223525203804543%5D

提前非常感谢您。

在线编码器上的样本输出

javascript arrays string urlencode

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

encodeURI(JSON.stringify())在URL中显示%255B

我试图通过Angular中的queryParam,它由这样的对象数组组成fooArray = [{foo: 'bar', foo: false}, {foo: 'bar', foo: false}]。在URL queryParam中,我收到以下消息:使用时,%255BencodeURI(JSON.stringify(this.fooArray))

我试过使用encodeURI(JSON.stringify())将数组编码为queryParam和JSON.parse(decodeURIComponent())以检索参数

fooArray = [{foo: 'bar', foo: false}, {foo: 'bar', foo: false}]

fooParam: encodeURI(JSON.stringify(this.fooArray))

JSON.parse(decodeURIComponent(params["fooParam"]))

javascript urlencode encodeuricomponent query-parameters

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