Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Мультиязычность на сайте [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): « 1 [2]   

> Описание: Организация мультиязычности на сайте
dropoff
Отправлено: 01 Июня, 2011 - 14:04:52
Post Id



Посетитель


Покинул форум
Сообщений всего: 310
Дата рег-ции: Дек. 2010  


Помог: 0 раз(а)




а кнопки для выбора языка?
 
 Top
OrmaJever Модератор
Отправлено: 01 Июня, 2011 - 14:05:47
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




или даже ещё круче
PHP:
скопировать код в буфер обмена
  1. $l = array('ru', 'eng');
  2. $_SESSION['lang'] = (isset($_SESSION['lang']) && in_array($_SESSION['lang'], $l)) ? $_SESSION['lang'] : $l[0];
  3. include_once('lang/'.$_SESSION['lang'].'.php');

(Добавление)
dropoff пишет:
а кнопки для выбора языка?

Ну вобще сесия кончится когда закроют браузер и при каждом заходе на сайт придётся выбирать язык. Лутше использовать cookie, тогда даже красиво javascript`ом можно зделать

(Отредактировано автором: 01 Июня, 2011 - 14:05:56)



-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
dropoff
Отправлено: 01 Июня, 2011 - 14:12:43
Post Id



Посетитель


Покинул форум
Сообщений всего: 310
Дата рег-ции: Дек. 2010  


Помог: 0 раз(а)




Ну это да. Я на предыдущей страницы писал про это что сессия не вечна Радость

А что красиво можно сделать JS? Смену языка? Только смена будет для шаблона, а не контента.
 
 Top
leon1993
Отправлено: 01 Июня, 2011 - 14:30:56
Post Id



Гость


Покинул форум
Сообщений всего: 84
Дата рег-ции: Май 2011  


Помог: 1 раз(а)




dropoff пишет:
а кнопки для выбора языка?
вот да меня это тоже интересует, каким образом?
 
 Top
OrmaJever Модератор
Отправлено: 01 Июня, 2011 - 14:39:48
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




CODE (htmlphp):
скопировать код в буфер обмена
  1. <a href="#" onclick="document.cookie = 'lang=eng; expires=Wed, 1 Mar 20012 00:00:00'; location.reload(); return false;">eng</a>

Както так вроде Улыбка


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
dropoff
Отправлено: 01 Июня, 2011 - 14:52:46
Post Id



Посетитель


Покинул форум
Сообщений всего: 310
Дата рег-ции: Дек. 2010  


Помог: 0 раз(а)




)) Я думал динамически менять)
В общем, leon1993, решения есть. Почитайте про куки и сессии и выбирайте, что удобнее использовать будет.
 
 Top
leon1993
Отправлено: 01 Июня, 2011 - 14:56:14
Post Id



Гость


Покинул форум
Сообщений всего: 84
Дата рег-ции: Май 2011  


Помог: 1 раз(а)




ага от души всем, как напишу так выложу сюда
 
 Top
andrewbuenos
Отправлено: 21 Февраля, 2012 - 11:43:15
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Февр. 2012  


Помог: 0 раз(а)




Здравствуйте! Подскажите, пожалуйста, что я сделал неправильно:
файлlanguages.php:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.         $l = array('ukr', 'eng', 'ru');
  3.         $_SESSION['lang'] = (isset($_SESSION['lang']) && in_array($_SESSION['lang'], $l)) ? $_SESSION['lang'] : $l[0];
  4.         include_once('languages/'.$_SESSION['lang'].'.php');
  5. ?>

файлeng.php:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.         $lang['main'] = 'Main page';
  3. ?>

файлru.php:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.         $lang['main'] = 'Главная страница';
  3. ?>

файлindex.php:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. include ("languages.php");
  3. ?>

CODE (html):
скопировать код в буфер обмена
  1. <html>
  2. <head>
  3.         <title><?=$lang['main']?></title>
  4. </head>
  5. <body>
  6.         <h2><?=$lang['main']?></h2><br><br>
  7.                 <a href="#" onclick="document.cookie = 'lang=eng; expires=Tue, 21 Feb 2012 12:00:00'; location.reload(); return false;">eng</a><br>
  8.                 <a href="#" onclick="document.cookie = 'lang=ru; expires=Tue, 21 Feb 2012 12:00:00'; location.reload(); return false;">ru</a><br>
  9. </body>
  10. </html>
  11.  
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с файловой системой и файлами »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB