「附加了一個url,該附件已經在前一個url中? 這是最令人困惑的標題 - 我知道。但我想不出一個更好的解釋方法。將查詢字符串附加到URL
也許下面的例子會有所幫助。
我有URL 1:http://example.com/?value=xyz&stuff=abc
如果有人點擊該頁面中的鏈接,我可以沿着附加價值傳遞?
即:http://www.example.org/?value=xyz&stuff=abc
感謝和你是這樣一個noob遺憾。
「附加了一個url,該附件已經在前一個url中? 這是最令人困惑的標題 - 我知道。但我想不出一個更好的解釋方法。將查詢字符串附加到URL
也許下面的例子會有所幫助。
我有URL 1:http://example.com/?value=xyz&stuff=abc
如果有人點擊該頁面中的鏈接,我可以沿着附加價值傳遞?
即:http://www.example.org/?value=xyz&stuff=abc
感謝和你是這樣一個noob遺憾。
如果鏈接與PHP構建,只是原來的查詢字符串附加到他們:
<a href="http://step2.com/?<?php echo $_SERVER['QUERY_STRING']; ?>">Some link</a>
在JavaScript中,只是window.location.search
值追加到所有你需要「通行證」的查詢字符串的鏈接。
你問這些附屬物是一個URI的實際所謂查詢部分:3.語法成分(RFC 3986)http://tools.ietf.org/html/rfc3986#page-16
:<scheme>://<authority><path>?<query>
foo://example.com:8042/over/there?name=ferret#nose
\_/ \______________/\_________/ \_________/ \__/
| | | | |
scheme authority path query fragment
來自
然後,您需要一個輔助函數,將(可選)
<query>
附加到現有的<scheme>://<authority><path>
零件上。我忽略了<fragment>
此〔實施例,因爲這將需要在年底前加入,我想留下點什麼作爲練習:function href_append_query($href) { $query = isset($_SERVER['QUERY_STRING']) ? '?' . $_SERVER['QUERY_STRING'] : '' ; $query = strtr( $query, [ '"' => '"', "'" => ''', '&' => '&' ] ); return $href . $query; }
而且它的用法:
<a href="<?=href_append_query('http://step2.com/')?>Some link</a>
這個小功能確保可以通過
$_SERVER
Docs獲得的現有QUERY_STRING
爲HTML輸出編碼。
你也可以用js/jQuery的追加現有的查詢字符串到頁面上的每一個環節:
$(function() {
$('a').each(function() {
link = $(this).attr('href');
query = window.location.search;
if (link.indexOf('?') !== -1 && query !== '') {
query = query.replace('?','&');
}
$(this).attr('href',link+query);
});
});
如何這個環節是建立?使用JavaScript或PHP? – raina77ow
你的代碼在哪裏?你有沒有嘗試過任何東西? –
你是什麼意思傳遞它?你想要在網址中嗎?在PHP中,該信息位於'$ _SERVER ['QUERY_STRING']'中 – ernie