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

Форум PHP

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

 

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

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

тема: Поддержка нескольких языков
 
 автор: scat   (13.04.2007 в 10:21)   письмо автору
 
 

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

Вот код:


<?
$lng 
"<a href=index.php?lang=english>English</a> <a href=index.php?lang=russian>Русский</a>";
$lang $_GET['lang'];
switch(
$lang)
{
case 
"russian": include("lang/russian.php");
break;
case 
"english": include("lang/english.php");
break;
default: 
include(
"lang/russian.php");break;
}
$language $_GET['lang'];
setcookie ('lang'$languagetime() +3600*24*7);
$text _TITLE_;
?>
<?=$lng?>
<?=$text?>

   
 
 автор: Trianon   (13.04.2007 в 10:27)   письмо автору
 
   для: scat   (13.04.2007 в 10:21)
 

любой вызов этого скрипта без параметра lang затрет куку. Это явно написано в последних трех строках php-кода.

   
 
 автор: scat   (13.04.2007 в 10:29)   письмо автору
 
   для: Trianon   (13.04.2007 в 10:27)
 

Можно какой нить пример, а то уже голова кипит.

   
 
 автор: Trianon   (13.04.2007 в 10:39)   письмо автору
 
   для: scat   (13.04.2007 в 10:21)
 


<? 
$lng 
"<a href=index.php?lang=english>English</a> 
<a href=index.php?lang=russian>Русский</a>"


$lang = isset($_GET['lang'])?  $_GET['lang'] : 
    ( isset(
$_COOKIE['lang']) ? $_COOKIE['lang'] : '' ); 

if(
$lang != 'russian' && $lang != 'english'
    
$lang 'russian' ;

if(isset(
$_GET['lang']) && $_GET['lang'] == $lang)
    
setcookie ('lang'$langtime() +3600*24*7); 

include(
"lang/$lang.php"); 

$text _TITLE_
?> 
<?=$lng?> 
<?=$text?>

   
 
 автор: scat   (13.04.2007 в 10:41)   письмо автору
 
   для: Trianon   (13.04.2007 в 10:39)
 

Большое спасибо

   
 
 автор: scat   (13.04.2007 в 10:45)   письмо автору
 
   для: Trianon   (13.04.2007 в 10:39)
 

Блин че то не выходит

   
 
 автор: Trianon   (13.04.2007 в 11:04)   письмо автору
 
   для: scat   (13.04.2007 в 10:45)
 

А так?

   
 
 автор: scat   (13.04.2007 в 11:11)   письмо автору
 
   для: Trianon   (13.04.2007 в 11:04)
 

Показывает что в этих строках ошибки:

$lang = isset($_GET['lang'])?  $_GET['lang'] :  
    ( isset($_COOKIE['lang']) ? $_COOKIE['lang'] : '' );  

   
 
 автор: Trianon   (13.04.2007 в 11:13)   письмо автору
 
   для: scat   (13.04.2007 в 11:11)
 

Нету в этих строках ошибок. Уже нету.

   
 
 автор: scat   (13.04.2007 в 11:14)   письмо автору
 
   для: Trianon   (13.04.2007 в 11:13)
 

А в чем прикол был?

   
 
 автор: Trianon   (13.04.2007 в 11:22)   письмо автору
 
   для: scat   (13.04.2007 в 11:14)
 

прикола не было. Был прокол. Пару скобок забыл.

   
 
 автор: scat   (13.04.2007 в 11:13)   письмо автору
 
   для: Trianon   (13.04.2007 в 11:04)
 

Спасибо получилось!!!

   
Rambler's Top100
вверх

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