2015-11-08 3 views
0

Добрый день,

Я просто пытаюсь добавить еще одну переменную в свою ссылку. Например: Я нахожусь на странице/статье? Id = 12, и я хочу переключить его на другой язык. У меня есть две ссылки в меню. CS и EN. Но они установлены в «? Lang = cs» и «? Lang = en». Поэтому, когда я нажимаю, чтобы переключить язык, это приведет меня к странице /article? Lang = en, но я больше не буду там ее ID. Есть ли способ сохранить эту переменную $ _GET и просто добавить ее? я, хотя я мог бы дать там «& языки = еп», но когда я, например, на странице/контакт, она не будет работать для меня, как «/ контактная & языки = еп» ...

Благодарим вас за все советы!

EDIT

Я попытался это, но он не работает:

if (strpos($_SERVER['REQUEST_URI'], '?') != false) 
{ 
    $url = $_SERVER['REQUEST_URI'] . '&lang=cs'; 
    $url2 = $_SERVER['REQUEST_URI'] . '&lang=en'; 
} 
else 
{ 
    $url = $_SERVER['REQUEST_URI'] . '?lang=cs'; 
    $url2 = $_SERVER['REQUEST_URI'] . '?lang=en'; 
} 
+0

даже это: ' 'Не работал .. Я понятия не имею, как заставить его работать ... –

+0

afaik' REQUEST_URI' не содержит параметров запроса. Вы можете использовать другую переменную. Используйте ' ZeissS

ответ

1

Попробуйте это:

$url = "?" . http_build_query($_GET) . (count($_GET) > 0 ? "&" : "") . "lang=en"; 

Это берет оригинальные аргументы.

+0

Спасибо, что работа! Но когда у меня есть, например, ... _/article? Lang = en & id = 5_, и я хочу переключить язык, он делает ссылку как: _/article? Lang = en & id = 5 & lang = cs_ –

+0

Сделайте 'unset ($ _GET ['lang']); 'before, если это не понадобится позже. В противном случае вам нужно скопировать '$ _GET' в локальную переменную и отключить индекс' lang'. – Richard

+0

@HSturma: Кстати, это не приятно, но ваш url работает и :-) – Richard

Смежные вопросы