2017-06-19 88 views
0

的download.php編碼下載網址

$dl_file = $_GET['download_file']; 

我不想直接顯示下載網址我每次指向箭頭的時間來下載按鈕,我使用笨。我如何編碼?

回答

0

基地64不會在所有的工作因爲它使用的字符不能通過瀏覽器傳輸。

你應該使用它如下:

href="http://mywebsite/index.php/files/download?download_file=<?php echo urlencode(base64_encode($ph['FileName']));?>" 

而且它的download.php

$dl_file = base64_decode(urldecode($_GET['download_file'])); 
+1

base64編碼所說==登錄編碼值和它不是由在缺省URL允許的。所以你應該去**的application/config/config.php文件** 並更改以下值。 '$ config ['permitted_uri_chars'] ='a-z 0-9〜%。:_ \ - =';' 最後的等號是由我添加的,但它不會默認存在。 –

+0

非常感謝! :) – jenii

+0

@HimanshuUpadhyay有沒有更強的編碼比的base64? – jenii

0

爲了達到你的目的,你可以做的是:

編碼您的網址

href="http://mywebsite/index.php/files/download?download_file=<?php echo base64_encode($ph['FileName']);?>" 

而且它的download.php解碼

$dl_file = base64_decode($_GET['download_file']); 
+0

base64編碼把==登錄編碼值,它是不是默認的URL允許解碼。所以你應該去**的application/config/config.php文件** 並更改以下值。 '$配置[ 'permitted_uri_chars'] = 'A-Z 0-9%〜:_ \ - =';' 等號,最後是由我添加的,但它不會存在默認情況下。 –