2014-01-29 52 views
0

1.主要功能在地址欄中隱藏url持有者iframe鏈接?

確定。第一,主要功能是這樣的:

function url($atts, $content = null) { 
return '<a href="/url/?iframe='.$content.'" target="_blank">'.$content.'</a>'; 
} 
add_shortcode("url", "url"); 

,而且我用: [URL] https://stackoverflow.com/[/url]

它返回:

<a href="/url/?link=https://stackoverflow.com/" target="_blank">https://stackoverflow.com/</a> 

2.協議功能

當點擊它發送用戶協議進行:

function url_proceed($atts, $content = null) { 
$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; 
$url = str_replace('url', 'url.php', $url); 
return '<a href="'.$url.'">Proceed</a>'; 
} 
add_shortcode("url_proceed", "url_proceed"); 

這簡碼放在網頁上的名字和標籤:網址,作爲功能說。

,這將發送到用戶的最終目的地:

<a href="/url.php/?iframe=https://stackoverflow.com/" target="_blank">Proceed</a> 

最終目的地

url.php是根,與內容:

<iframe src="<?php echo $_GET['iframe']; ?>" width="100%" height="100%" frameborder="0" scrolling="yes"></iframe> 

4.地址欄

在地址欄的所有步驟我都有?iframe=https://stackoverflow.com/

  1. http://domain.com/url/?iframe=https://stackoverflow.com/

  2. http://domain.com/url.php/?iframe=https://stackoverflow.com/

在地址欄中我想這?iframe=https://stackoverflow.com/是這樣?iframe=encrypted/obfuscated,或將其刪除t仍然可以使用$_GET

如果有人知道解決方案,我會很感激。

我知道inspect元素仍然會顯示iframe的來源,但是如果沒有顯示此持有者,它看起來會更好。

回答

0

可以使用的Base64編碼與:

base64_encode

網址:

?iframe=aHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tLw== 

,然後用解碼:

base64_decode

和接收在頁面上你dec的參數ode

+0

$ content = base64_encode($ content);在第一個函數和變量的其他變化之後。 $ _GET ['link'] = base64_decode($ _ GET ['link']);在最後一步變量的其他變化和中提琴之前,它正在工作。工作,但仍然有錯誤:「未捕獲ReferenceError:$ iframe未定義」 – user3238424

+0

問題似乎將該變量傳遞給JavaScript。 –