gpt4 book ai didi

php - jQuery 和 PHP : Encode & Decode URL

转载 作者:可可西里 更新时间:2023-11-01 00:03:39 26 4
gpt4 key购买 nike

每当单击链接时,我都会通过 URL 将字符串传递到另一个页面。

原始的 a 标签及其 href 是通过 PHP while 循环创建的,如下所示:

<a href=".($row['secondary'] == 'true' ? "secondary_imgs.php?imgId=".$row['imgId']."
&imgTitle=".$row['imgTitle']."" : "new_arrivals_img/".$row['imgURL']."").">

注意:a 标记确实包含其他属性,但为简单起见我删除了它们。

然后使用以下 jQuery 函数将当前窗口尺寸附加到 href:

$("a[href^='secondary_imgs.php']").click(function(){
var pageWidth = $(window).width();
var pageHeight = $(window).height();
var url = $(this).attr('href');
var idx = url.indexOf('&pageWidth=');
if (idx != -1) {
url = url.substr(0, idx);
}
url += '&pageWidth=' + pageWidth + '&pageHeight=' + pageHeight;
$(this).attr('href', url);
});

我的问题是,在这种情况下我应该使用什么编码 URL 的方法,因为它需要首先使用 PHP,然后是 jQuery/JavaScript,最后通过 PHP 解码?或者它需要在 PHP 和 jQuery/JavaScript 中完成吗?原始的 PHP $row['imgTitle']总是至少有空格,所以我知道它需要在那时完成。但是看到附加值将始终是一个等于数字的变量,是否也需要对其进行编码?

我知道每种编码语言都有几种编码/解码 URL 的方法,但我的知识不足以做出选择。

如果有人也可以提供我将如何执行每个步骤的示例,将不胜感激。

最佳答案

你应该使用 urlencode()在 PHP 中对 URI 组件进行编码。

javascript 中的等效函数是 encodeURIComponent() .

PHP 将自动解码这样编码的参数。

所以,在你的 PHP 中:

'<a href="..&imgTitle='.urlencode($row['imgTitle'])

同样,在您的 javascript 中:

'&someparam=' + encodeURIComponent(someValue)

关于php - jQuery 和 PHP : Encode & Decode URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7296499/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com