[英]How to make a .htaccess to redirect all request from the url to get.php?u= but exclusing exsisting files
[英]A way to use switch, to check if “url/file” is present in "url/file?get.php? [request uri]
我正在嘗試檢測網址何時是“ localhost / asignaciones”,但是當我通過按鈕提交某些內容時,URL會更改,因此它像這樣“ localhost / asignaciones?asg = 2222”一樣保留,因此情況“ / asignaciones”為false
$url = $_SERVER['REQUEST_URI'];
switch ($url) {
case "/asignaciones?ireelevant_stuff":
$asignaciones = 'active_button';
$combinaciones = 'unactive_button';
break;
case:
$asignaciones = 'unactive_button';
$combinaciones = 'active_button';
}
對不起,我不知道如何更好地解釋它。
謝謝@ user3783243
固定代碼:
$url = $_SERVER['REQUEST_URI'];
$asiguri = 'asignaciones';
$comburi = 'combinaciones';
$legauri = 'legajos';
$inicuri = '/';
switch (true) {
case strpos($url,$asiguri) === 1: //when $url = '/asignaciones' strpos returns '0' so 'asignaciones' returns '1'. when it returns 1 the code executes until the break
$asignaciones = 'active_button';
$combinaciones = $legajos = $inicio = 'unactive_button';
break;
case strpos($url,$comburi) === 1:
$asignaciones = $legajos = $inicio = 'unactive_button';
$combinaciones = 'active_button';
break;
case strpos($url,$legauri) === 1:
$asignaciones = $combinaciones = $inicio = 'unactive_button';
$legajos = 'active_button';
break;
case strpos($url, $inicuri) === 0: //leave at last because '/' is present in every other
$asignaciones = $combinaciones = $legajos = 'unactive_button';
$inicio = 'active_button';
break;
default:
$asignaciones = $combinaciones = $legajos = $inicio = 'unactive_button';
}
您在代碼中犯了一些錯誤。
要檢查您的網址是否包含字符串,可以使用strpos
PHP函數,如下所示:
$url = $_SERVER['REQUEST_URI'];
if (strpos($url, '/asignaciones') !== false) {
// The string $url contains "/asignaciones"
$asignaciones = 'active_button';
$combinaciones = 'unactive_button';
} else {
// The string $url DOES NOT contain "/asignaciones"
$asignaciones = 'unactive_button';
$combinaciones = 'active_button';
}
為了實現所需的功能,您需要將TRUE
作為switch
值進行檢查,然后再對案例進行評估。
switch (true) {
case ($url == "/asignaciones?ireelevant_stuff"):
$asignaciones = 'active_button';
$combinaciones = 'unactive_button';
break;
case ($url == "otherpath"):
$asignaciones = 'unactive_button';
$combinaciones = 'active_button';
break;
}
手冊的用戶貢獻中也有一個示例, https://www.php.net/manual/en/control-structures.switch.php#9610 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.