X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Нужен совет по теме: Смена языка на сайте.
nazarlee
nazarlee
Topic Starter сообщение 28.4.2011, 16:59; Ответить: nazarlee
Сообщение #1


Здравствйте.

Ситуация такая:
- В блоке хедера, который подключается на старницы сайта из отдельного файла header.php, есть функция смены языка. Точнее - это обычная ссылка, которая перемещает пользователя на главную страницу сайта, но уже на другом языке.

Задача: Сделать так, что бы при смене языка, пользователь оставался на той же странице, где он и нажал на ссылку смены языка. Тоесть если человек находится в разделе "контакты", то, если он захочет узнать те же контакты, но на английском, его не редиректело бы на главную страницу, а оставляло бы на нынешней старнице.



Я так подозреваю, что необходимо какоето условие )))
Так же я думаю, что всё как всегда достаточно просто ))

Всем заранее СПАСИБО!
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Slavoz
Slavoz
сообщение 28.4.2011, 17:29; Ответить: Slavoz
Сообщение #2


редирект в отдельном фале? если нет то зачем условие? просто редирект на эту страницу
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Boolean
Boolean
сообщение 28.4.2011, 18:15; Ответить: Boolean
Сообщение #3


$.post('/ajax/language.php?set=EN',{'do':'set'});
window.location = window.location + '?rand=1';
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
nazarlee
nazarlee
Topic Starter сообщение 29.4.2011, 12:55; Ответить: nazarlee
Сообщение #4


На сайте продублированы все страницы на 2 языках.
К примеру:
- странице contact.php которая содержит информацию на английском языке, соответствует точно такая же страница contact_fra.php, которая содержит тот же текст (данные) только на французском языке. И так для всех страниц на сайте.

Блок хедера, вместе с меню и ссылкой на переключение языка, лежит в отдельном файле header.php, который просто подключается в нужном месте на каждой странице сайта.

Вот код блока со ссылкой:
<div class="smena_jazikov">
<a class="smena_jazikov_link" href="index_f.php">FRA</a>
</div>

Он, как вы видете, переключает пользователя, который нажимает на "FRA" на главную страницу сайта с французским текстом.

Задача та же:
- Сделать так, что бы пользователь находясь на станице (к примеру contact.php) при клике на ссылку смены языка попадал не на index_f.php, а на старницу соответствующую той, на которой он сейчас находится. В нашем случае странице contact.php соответствует страница conttact_fra.php.
Такая схема должна работать для каждой страницы сайта. Их около 10 штук.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
nazarlee
nazarlee
Topic Starter сообщение 29.4.2011, 13:25; Ответить: nazarlee
Сообщение #5


[PHP]$.post('/ajax/language.php?set=EN',{'do':'set'});
window.location = window.location + '?rand=1'; [/PHP]

Не сталкивался с таким раньше. Наверное этот метод не подходит к описанной выше ситуации.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Boolean
Boolean
сообщение 29.4.2011, 13:27; Ответить: Boolean
Сообщение #6


смотрите.
Сейчас я нахожусь на
http://site/myfile.php?id=1&param=2&parameshe=3
HTML
<form method="POST">
<input type="hidden" name="language" value="en">
<input type="hidden" name="do" value="set_language">
<input type="submit" value="English!">
</form>

Теперь в каждый файл пхп
[PHP]include('switch_language.php');[/PHP]

switch_language.php
[PHP]
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST'){
if ($_POST['do'] == 'set_language'){
if ( strtolower($_POST['language']) == 'en' ){
$param = '_eng';
}else{
$param = '';
}
$url = explode(".php",$_SERVER['REQUEST_URI']);
$url[0] = $url[0] . $param . ".php";
$url = implode("", $url);
header('location: '.$url);
exit;
}
}
?>
[/PHP]

Но это все конечно нужно дорабатывать, но думаю суть понятна.

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыБыстрый и качественный обмен на сайте Baksman.org
Обмен Bitcoin, BTC-e, PM, Qiwi, Yandex money, Карты банк
52 Baksman 33548 Сегодня, 5:02
автор: Baksman
Открытая тема (нет новых ответов) Боты могут делать пушподписки на моём сайте?
0 Megaspryt 360 Вчера, 23:29
автор: Megaspryt
Горячая тема (нет новых ответов) CryptoCloud — прием USDT, BTC, ETH, LTC на любом сайте
36 CryptoCLoud 10631 16.4.2024, 16:02
автор: CryptoCLoud
Горячая тема (нет новых ответов) Странный трафик на сайте длительное время
33 TABAK 8722 12.4.2024, 5:56
автор: Skyworker
Открытая тема (нет новых ответов) Нужен кодер, чтобы пофиксить ошибку Wordpress после переноса сайта
0 Alex-777 830 7.4.2024, 18:05
автор: Alex-777


 



RSS Текстовая версия Сейчас: 18.4.2024, 19:55
Дизайн