你好社區#1,我需要GET
東西幫助。所以我有一個先進的搜索,當我提交表單,瀏覽器顯示此鏈接:清空網址參數
/page_korteles.php?kriterijus-susirgo-nuo= &標準,有病到= &標準出生自= &標準出生起來= &標準點膠,從= &標準點膠機= &測試輸入從= &測試輸入到= &標準高級=無
是否有可能清除空參數?或者,也許有不同的這種工作方式?真的需要一些想法。
你好社區#1,我需要GET
東西幫助。所以我有一個先進的搜索,當我提交表單,瀏覽器顯示此鏈接:清空網址參數
/page_korteles.php?kriterijus-susirgo-nuo= &標準,有病到= &標準出生自= &標準出生起來= &標準點膠,從= &標準點膠機= &測試輸入從= &測試輸入到= &標準高級=無
是否有可能清除空參數?或者,也許有不同的這種工作方式?真的需要一些想法。
您可以簡單地使用array_filter()
-
print_r(array_filter($_GET));
更多的知識 - https://secure.php.net/manual/en/function.array-filter.php
注: - 上述功能將不會從您的網址中刪除任何東西,只是從數組變量刪除空值的元素$_GET
。
也許你想要的東西,像下面(這個建議被另一個角色給出,我只是將它添加因爲可能是它有助於你) -
if(array_filter($_GET) == $_GET) { //stays on page and do other stuff (already removed empty) }else{ // remove empty keys and redirect to url without them; }
嘗試這樣當提交表單
$("#search-form").submit(function(){
$("input").each(function(index, input){
if($(input).val() == "") {
$(input).remove();
}
});
});
我喜歡這個主意,但我認爲最好不要創建具有空值的數組,併發送此數組服務器,並且不移除元素... –
其實如果你想要的網址看不包含空參數,可以過濾他們走出查詢字符串後重定向到同一頁面。
// using a callback in array_filter can avoid filtering non-empty falsey values (0, etc.)
$not_blank = array_filter($_GET, function($x) { return $x != ''; });
if ($not_blank != $_GET) {
$query = http_build_query($not_blank);
header('Location: ' . $_SERVER['PHP_SELF'] . "?$query") ;
exit;
}
老實說,雖然,我不知道它是如何傷害到有什麼他們那裏。這似乎是多了一個步驟的,沒有必要但願這導致未來的問題,如果你actualy需要空參數值發送到該頁面。
如果你只是想從讓他們刪除,看看[array_filter(http://php.net/manual/en/function.array-filter.php) – FirstOne
'的print_r(array_filter($ _ GET) )' –
是否有可能在該網址顯示之前的土地的功能?或者我應該有載降落,並立即重定向? – Sidas