Не сте регистриран! Регистрирайте се БЕЗПЛАТНО, за да използвате услугите на сайта!

Нова тема
Сайт PHP с два езика
Тази тема е погледната 280 пъти
Добави темата към любими | Принтирай темата | Нова тема 
Публикувано на: 23.07.2008 13:54
bourev
Калфа

Мнения: (15)

Здравейте,
моля за съдействие.
Имам сайт който трябва да е на два езика. Изкарвам необходимите ми текстове - за меню, заглавия и т.н. в отделни файлове и ги прикачвам към променливи. В зависимост от езика инклудвам файла за конкретния език, но с функция echo не става нищо.
Някакви идеи?
Благодаря на всички


 
---------------------------
Потребител от: 27.07.06 | Всички уроци от bourev | Всички скриптове от bourev
напиши eMail напиши лично съобщение виж профила на bourev
Публикувано на: 23.07.2008 14:40
napster
Император

Модератор

Мнения: (680)

Пробвай нещо от сорта:

Създаваш index.php
CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php
session_start
();
?>
<!-- Това са бутоните за смяна на езика -->
<
a href="index.php?p=<?print $_REQUEST[p];?>&chlang=bg"><img src="bg_icon.gif" border=0 alt="Български"></a>
<
a href="index.php?p=<?print $_REQUEST[p];?>&chlang=en"><img src="en_icon.gif" border=0 alt="English"></a>

?
php
if ($_REQUEST[chlang]) {
if (file_exists($_REQUEST[chlang].'.php')) {
session_register("chlang");
$_SESSION['chlang']=$_REQUEST['chlang'];
}
}
if (!$_SESSION['chlang']) {
include ('bg.php'); // Това е езика по подразбиране
} else {
include ($_SESSION[chlang].'.php');
}

if (!$_REQUEST[p]) {
// Ако е отворен просто
Index.php отваря главната страница: main.php
include
('main.php');
} else {
if (file_exists($_REQUEST[p].'.php')) {
// Ако файла съществува го отваря
include ($_REQUEST[p].'.php');
} else {
// Ако файла не съществува отварянето извежда съобщение за грешка и отваря
main.php
print "<center><small><font color=red>".$lang[page_not_exist]."</font></small></center>";
include ('main.php');
}
}

?>

Трябва да създадеш и примерни файлове за български и английски език:

en.php (за английския):
CODE
1
2
3
4
5
6
7
<?php
$lang['hello']="Hello!";
$lang[page1]="First page";
$lang[page2]="Second page";
$lang[page_not_exist]="The page you're trying to open doesn't exist!";
// Така можеш да добавяш колкото думи или изрази ти трябват
?>

bg.php (за българския):
CODE
1
2
3
4
5
6
7
<?php
$lang['hello']="Здравей!";
$lang[page1]="Първа страница";
$lang[page2]="Втора страница";
$lang[page_not_exist]="Страницата която се опитваш да отвориш не съществува!";
// Същото като
en.php само че на Български :)
?>

Правиш и две примерни страници:

main.php
CODE
1
2
3
4
<?php
print $lang[hello];
print " <a href=index.php?p=new_page>$lang[page2] >></a>";
?>

new_page.php
CODE
1
2
3
<?php
print $lang[hello]." <a href=index.php><< ".$lang[page1]."</a>";
?>

Просто трябва да го преведеш в съощветните файлове като добавиш $lang[neshto]="Neshto na angliiski"; и $lang[neshto]="Neshto na bulgarski"; и след това във страниците го използвате като напишете $lang[neshto].

Поздрави!


 
---------------------------
Потребител от: 25.02.08 | Всички уроци от napster | Всички скриптове от napster

Шизофрения е когато в един форум общуваш
сам със себе си под три различни ника!!!
http://www.hidrostroitel.com




напиши eMail напиши лично съобщение виж профила на napster
Публикувано на: 23.07.2008 15:50
bourev
Калфа

Мнения: (15)

Перфектно, много благодаря. Така става. Приятен ден.


 
---------------------------
Потребител от: 27.07.06 | Всички уроци от bourev | Всички скриптове от bourev
напиши eMail напиши лично съобщение виж профила на bourev
 1 посетител чете тази тема (0 потребители и 1 гост)  
Активни потребители: ---
   





IT-PLACE.NET © 2004 - 2008