Как да променям езика в сайт чрез бутон?

Marik

Registered
Искам да попитам как мога да направя примерно цъкат картинката знаме на англия и менютата ми стават на английски ? :( доста съм се чудил как става нали само менютата да се променят
 
правиш сайта с 2 indexa аз лично не знам за друг начин :) единия ти е да кажем на бг другия на енглиш ... и някой като цакне на енглиш и го преносова кам индекса за енглиша :)
 
Marik каза:
Искам да попитам как мога да направя примерно цъкат картинката знаме на англия и менютата ми стават на английски ? :( доста съм се чудил как става нали само менютата да се променят

Можеш да направиш сайт и на 100 езика. :)
Слагаш целия текст на страницата в отделен файл....

Примерно файла
bg.inc

$home="Начало";
$forum="Форум";
$welcome="Добре дошли в сайта web-tourist.net";
$lessons="Много уроци за php, mysql, css и html";

После индекса трябва да ти е:

index.php

<?
session_start();
$language=$_GET['lang'];
if ($language=="bg")
{$HTTP_SESSION_VARS['lang']="bg";}
elseif ($language=="en")
{$HTTP_SESSION_VARS['lang']="en";}
elseif ($language=="fr")
{$HTTP_SESSION_VARS['lang']="fr";}

$langfile=$HTTP_SESSION_VARS['lang'].".inc";

include ($langfile);



echo "Изберете език <a href=index.php?lang=bg>BG</a> <a href=index.php?lang=en>EN</a> <a href=index.php?lang=fr>FR</a> ";

echo $home."<br/>";
echo $forum."<br/>";
echo $welcome."<br/>";
echo $lessons."<br/>";
?>


Така може да го направиш на 1000 езика стига да преведеш само един файл.

Разбираш ли?

Сесиите съм ги сложил за да могат другите страници да разбират от някъде какъв език си избрал.
 
А да попитам като е в моя случай менюто ми е на javascript искам да направя следното аз съм си направил едно english java меню обаче искам примерно потребителите като цъкнат там картинката на знаменцето ENG и да се променят бутоните вече да смени на всякъде другото javascript меню което съм направил , само че на английски де :oops:
 
Ми по същия начин. :)

Във файла lang.inc слагаш:

$menu1="Начало";

А всайта слагаш:

echo '
<script type="text/javascript" language=JavaScript>
<!--
var menu1=new Array()
menu1[0]="<a class=nava href=index.php>$menu1 <\/a>"

</script>
';
 
При мен нещо не се получава -> цък :(

Опс.. оправих го :lol:

<?
$home="Начало";
$forum="Форум";
$welcome="Добре дошли в сайта web-tourist.net";
$lessons="Много уроци за php, mysql, css и html";
?>


А как ще стане езика да се запазва в бисквитка и така при следващото ти влизане да е този, който си избрал предния път.. хем и докато сърфираш из сайта?
 
Up-вам темата с надеждата да се намери някой, който да подскаже как ще стане с Cookie..? :roll:

Много искам да си преведа сайта на няколко езика, но да не се налага на всяка страница да го избираш.

При мен нещо не се получава това със сесиите! :(

EDIT: Всъщност вече няма нужда :)
http://www.phpbuilder.com/columns/white-eisenhamer20060915.php3

..btw нз защо, но на мен ми вади грешка този language.php
function switch_language_options() { Но това не е фатално!
Махнах функцията и това <p><?= switch_language_options(); ?></p>
от index.php :lol: Някой друг подкарва ли го без грешка?
 
ааааа както не ме бива хич в cookie тата и ме цепи главата май се отказан
можеби ще го отложо за друг път
 
не знам защо и на мен ми дава същата грешка : function switch_language_options() { и хич не знам ко да напраа.
 
Ако имаш поддръжка на php на сървъра ти, има буквално десетки начини. Може би най-ламерският е различни папки с различни index-и и при натискане на език да отиваш в тази папка. Преди време правих такъв сайт и стана доста добре чрез DOM. Parse-вах от XML и стана добре. Малко проблеми с енкодингът имаше, но се оправих. :D
Друга идея е да ползваш include в php. Правиш switch функция с няколко case-а, които ще ти представляват езиците. И във всеки един case include-ваш файлът, за избрания език. Това решение е що годе приемливо, но пак има недостатъци. Може би най-големият е, че трябва да имаш няколко отделни файла на всяка страница за езиците. Това е неудобно. Вече най-елегантното решение ще е с BD. Просто взимаш записите от нея, а това позволява и admin панел да си спретнеш и ще стане найистина много добре. Успех и ако имаш въпроси питай! :)
 

Горе