Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> сайт с англ версией 
:(
    Опции темы
ekim
Дата 12.4.2007, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 12.4.2007

Репутация: нет
Всего: нет



т.е в зависимости от строки запроса загружался нужный контент.
например, если пользователь набирает www.сайт.ru/rus/ загружается русская версия
если www.сайт.ru/eng/ загружается английская версия

у меня фактически нет опыта работы на php. но одна мысль есть
я думаю так: через QUERY_STRING получить значение rus/eng и в зависимости от этого подключаться к нужной БД
кроме того, от этого будет зависеть инклуды (шапка, меню, футер)

будет ли это работать или есть способ проще?



Это сообщение отредактировал(а) ekim - 12.4.2007, 11:37
PM MAIL   Вверх
z-END
Дата 12.4.2007, 11:46 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

Репутация: 5
Всего: 102



именно так,
хотя если есть возможность использовать subdomains, то я бы сделал два домена:
www.site.ru
www.eng.site.ru 
и завязал бы на один сайт.
а там уже определять если в $_SERVER['SERVER_NANE'] есть входение "eng." значит - инглицкая версия, а по дефолту - русская

Добавлено через 34 секунды
и вообще конечно к БД это никак не относится


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
mishaSL
Дата 12.4.2007, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1046
Регистрация: 10.1.2007
Где: Санкт-Петербург

Репутация: 19
Всего: 54



ekim, вариантов множество:
1. Поместить версии языков в разные папки(самых простой вариант, тем более насколько я понял у вас версии полностью различны).
2. Через .htaccess (mod_rewrite) перенапрявлять на индексный файл, а там уже обрабатывать.
Пример .htaccess:
Код

RewriteEngine on
RewriteRule ^(rus|eng)[/]?$ index.php?lang=$1 [NC,L]


Файл index.php:
Код

<?php
if ($_GET['lang'] == 'rus') {
    print 'русская версия';
} elseif($_GET['lang'] == 'eng') {
    print 'английская версия';
}
?>



--------------------
Лучший способ научиться программированию - это посмотреть как это делают другие...
PM MAIL   Вверх
z-END
Дата 12.4.2007, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

Репутация: 5
Всего: 102



Цитата(mishaSL @  12.4.2007,  13:51 Найти цитируемый пост)
Файл index.php:

а если lang вообще не указан? smile
да и впринципе неочень красиво с этим lang=... а иногда еще и лишние проблемы создает..
например если в одном из тысячи скриптов где-то выполняется Header("Location: ..."); то ведь придется все это найти и исправить... имхо не самый удобный способ.


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
mishaSL
Дата 12.4.2007, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1046
Регистрация: 10.1.2007
Где: Санкт-Петербург

Репутация: 19
Всего: 54



Цитата(z-END @  12.4.2007,  13:46 Найти цитируемый пост)
имхо не самый удобный способ. 

Впринципе нормальный способ, если вообще ланг не указан, то в любом случае обращаемся к index.php, а там уже язык по умолчанию можем либо указать вручную:
Код

$lang = (empty($_GET['lang']) ? 'rus' : trim($_GET['lang']));


либо определять как угодно.
Цитата(z-END @  12.4.2007,  13:46 Найти цитируемый пост)
где-то выполняется Header("Location: ..."); 

Что именно исправить? Никак не пойму.
Хотя как лучше сказать сложно, тут уж на усмотрение разработчика. smile  Я бы сказал кому как удобнее. smile 



--------------------
Лучший способ научиться программированию - это посмотреть как это делают другие...
PM MAIL   Вверх
z-END
Дата 12.4.2007, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

Репутация: 5
Всего: 102



Цитата(mishaSL @  12.4.2007,  14:59 Найти цитируемый пост)
Цитата(z-END @  12.4.2007,  13:46 )где-то выполняется Header("Location: ..."); Что именно исправить? Никак не пойму.

например в скрипте выполнялся 
код 
Код

else {
       Header ("Location: bad_arguments.php");
       die();
}

то при переходе на схему с lang - нужно будет переписывать все подобные скрипты... при использовании сабдоменной схемы проблем таких нетsmile


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
mishaSL
Дата 12.4.2007, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1046
Регистрация: 10.1.2007
Где: Санкт-Петербург

Репутация: 19
Всего: 54



Цитата(z-END @  12.4.2007,  14:10 Найти цитируемый пост)
например в скрипте выполнялся 
код 
else {
       Header ("Location: bad_arguments.php");
       die();
}

ааа... ты имеешь ввиду внунренние редиректы, это да.



--------------------
Лучший способ научиться программированию - это посмотреть как это делают другие...
PM MAIL   Вверх
mclight
Дата 13.4.2007, 09:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 160
Регистрация: 6.7.2005
Где: Baku, Azerbaijan

Репутация: 1
Всего: 2



Код

$lang=(@$lang=='rus')?'rus':'eng';

это если у вас только два языка

Это сообщение отредактировал(а) mclight - 13.4.2007, 09:22
--------------------
Как я решал подводные камни Cakephp и не только
PM WWW ICQ MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0463 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.