Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Бьюсь уже две недели
 
 автор: scat   (21.03.2007 в 19:46)   письмо автору
 
 

Люди подскажите а лучше покажите. Как сделать мультиязычность. Например:
Пользователь заходит на мой сайт видит две картинки с русским флагом и английским
и при нажатии на определённый текст на сайте переводился и при следующем его заходе не
менялся.

   
 
 автор: ddhvvn   (21.03.2007 в 19:50)   письмо автору
 
   для: scat   (21.03.2007 в 19:46)
 

при нажатии на определённый текст на сайте переводился
например, хранить 2 версии текстов сайта в БД или файлах

>и при следующем его заходе не менялся.
думаю, достаточно будет использовать cookie

   
 
 автор: Киналь   (21.03.2007 в 19:51)   письмо автору
 
   для: scat   (21.03.2007 в 19:46)
 

> при следующем его заходе не
>менялся.

Это делается, например, с помощью cookie. А вот все остальное можно сказать, только зная, как формируется контент сайта. Все тексты берутся из базы? Или из шаблонов? Или просто вписаны при создани движка? Или сайт и вовсе статичный?

   
 
 автор: scat   (21.03.2007 в 20:00)   письмо автору
 
   для: Киналь   (21.03.2007 в 19:51)
 

То что с помощью cookie я уже догадался но мне хотя бы какой нибуть пример, напишу подробнее: У меня два файла russian.lng и english.lng в них созданы одинаковые константы и на
странице при выборе языка по умолчанию всё изменяется а вот как сделать для каждого пользователя отдельно что-то извилина барахлит.

   
 
 автор: dim0s   (21.03.2007 в 20:11)   письмо автору
 
   для: scat   (21.03.2007 в 20:00)
 

Ну стстема такая, только тут методом GET передается.

// nastrojka jazika
if (!isset($_GET['lang'])){$lang="eng";} else {$lang = $_GET['lang'];}
if(file_exists("lang/".$lang.".php")){require "lang/".$lang.".php";} else {require "lang/eng.php";}

ну вроде как англ. - по умолчанию
языковые файлы : rus.php, eng.php .... ну и так далее.

   
 
 автор: scat   (21.03.2007 в 20:17)   письмо автору
 
   для: dim0s   (21.03.2007 в 20:11)
 

Благодарю за пример. Но извините за тупость а как пользователь выберит нужный язык?

   
 
 автор: dim0s   (21.03.2007 в 22:20)   письмо автору
 
   для: scat   (21.03.2007 в 20:17)
 

В вашем случае на входной странице две ссылки.

<a href="index.php?lang=rus"><img src="rus.gif" width="12" height="12" alt="rus" border=0></a>
<a href="index.php?lang=eng"><img src="eng.gif" width="12" height="12" alt="eng" border=0></a>

а в index.php выше приведенный код. Ну это так, в принципе. Вариаций можно много придумать.
На каждой странице например:
То что в пред посте и
$PHP_SELF=$_SERVER['PHP_SELF'];
<a href="<?=$PHP_SELF;?>?lang=rus"><img src="rus.gif" width="12" height="12" alt="rus" border=0></a>
<a href="<?=$PHP_SELF;?>?lang=eng"><img src="eng.gif" width="12" height="12" alt="eng" border=0></a>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования