簡體   English   中英

傳遞GET參數,這是PHP的另一個URL-Codeigniter 3,Apache

[英]Pass GET param which is another URL with PHP - Codeigniter 3, Apache

我想像這樣在GET參數中傳遞URL:

網站網址/b16ee4f31e17df0d3af5?url=https%3A%2F%2Fwww.facebook.com%2F

我正在使用urlencode來轉義字符,但由於該URL GET參數中的某些字符(在這種情況下為點字符),因此我看到此URL的403 Error

如果我使用CI3函數url_title ,它將轉義點字符,但是我需要它們,因為我需要GET參數中的有效url。

在某些情況下,我該如何傳遞URL get參數,例如. & ? \\ . & ? \\ . & ? \\和其他可以在標准網址中找到的字符?

您可以在配置文件中更改$config['permitted_uri_chars']

Leave blank to allow all characters -- but only if you are insane.

您也可以這樣做:

步驟1: $newurl = urlencode(base64_encode('http://google.com'));

然后,您將得到一個字符串,將該字符串作為GET參數傳遞,並使用以下命令將其解析回:

$realUrl = base64_decode(urldecode($param1));

其中$param1表示控制器的第一個參數。

第2步:=添加到配置文件中的$config['permitted_uri_chars']

$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-';

將您要傳遞給GET Url的字符添加到該字符中。 此配置存儲在config文件夾的config.php中。

該網址已被編碼(也就是說,您只是從地址欄中復制並粘貼了該網址),因此可以將其用於進一步的編碼

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM