Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Multilanguage stranice u PHP-u

[es] :: PHP :: Multilanguage stranice u PHP-u

[ Pregleda: 1045 | Odgovora: 10 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Mauro 2410
Stipe Klarić
Šibenik

Član broj: 149201
Poruke: 4
*.adsl.net.t-com.hr.



Profil

icon Multilanguage stranice u PHP-u18.06.2007. u 17:52

Dobar dan ekipa
Početnik sam u PHP-u i baš mi treba pomoć vas iskusnijih.
Kako da u PHP-u napravim stranice na više jezika, a da kod promjene jezika ne moram kreirati čitavu novu stranicu?
Nadam se da ste me razumjeli.
Ukoliko neko ima neku gotovu skriptu ili prijedlog bit ću mu zahvalan.
18.06.2007. u 17:52 

mickey.co.ba
Miralem Halilovic
Zivinice, BiH

Član broj: 26263
Poruke: 129
87.250.112.*

Sajt: www.mickey.co.ba


Profil

icon Re: Multilanguage stranice u PHP-u18.06.2007. u 18:04
za to ti je potrebno veoma malo znanja sto se tiče PHP-a

da dzaba ne pisem ovdje neke karafeke, ako imas instaliran APPSERV u folderu www imas index i popratne fajlove u www/appserv

procackaj malo... skizit ces, to je jedan od nacina...

18.06.2007. u 18:04 

broker

Član broj: 2415
Poruke: 8521
91.150.127.*



Profil

icon Re: Multilanguage stranice u PHP-u18.06.2007. u 18:55
Imas gotovu besplatnu biblioteku Universal Language Tool For PHP
18.06.2007. u 18:55 

hatebreeder
Sinisa Bobic
Belgrade

Član broj: 48145
Poruke: 191
*.cpe.vektor.net.

Jabber: sinisabobic@gmail.com
ICQ: 339407553
Sajt: www.sinisabobic.com


Profil

icon Re: Multilanguage stranice u PHP-u18.06.2007. u 20:02
Nemojmo muciti pocetnika...

Sve delove koji treba da se prikazuju definisi preko nekih promenljivih... primera radi $tekst1 $tekst2 itd i echo-uj ga gde god pozelis... na pocetku strane postavi neki get koji dobija koji jezik je u pitanju tipa index.php?lang=sr a posle toga namesti da ucita stranu jezici/sr.php preko include... taj sr.php treba da bude sledeceg formata

Code:

<?php
$tekst1 = "nesto";
$tekst2= "nesto";
//i tako dalje za sve potrebno
?>


Ukoliko ucitavas iz baze razliciti tekst to isto definisi u ovome fajlu preko naziva tabele itd... Nadam se da shvatas ideju jer to je bas pocetnicki mada primenljivo u nekim slucajevima i kasnije...
18.06.2007. u 20:02 

Mauro 2410
Stipe Klarić
Šibenik

Član broj: 149201
Poruke: 4
*.adsl.net.t-com.hr.



Profil

icon Re: Multilanguage stranice u PHP-u18.06.2007. u 20:20
Hvala hatebreeder, ali mi molim te pomozi malo detaljnije.

Primjer, kreiram folder "languages" i unutra stavim fileove npr. lang_en.php, lang_de.php... (prijevodi na engleski i njemački) na način na koji si mi opisao.
E sad, kako bi u index.php izgledao kod koji bi pozivao određeni jezik, a na početnu index stranicu bih stavio zastavice za svaki jezik tako kad posjetitelji kliknu na određenu zastavicu stranica se prevede na taj jezik?

Hvala unaprijed
18.06.2007. u 20:20 

hatebreeder
Sinisa Bobic
Belgrade

Član broj: 48145
Poruke: 191
*.cpe.vektor.net.

Jabber: sinisabobic@gmail.com
ICQ: 339407553
Sajt: www.sinisabobic.com


Profil

icon Re: Multilanguage stranice u PHP-u18.06.2007. u 20:46
Nemam obicaj da kucam cele kodove al ajd kad sam poceo da objasnjavam...

Da ne bi mnogo kucali primer ce biti minimalan a sve ces razumeti...

u folder languages strpaj dva fajla lang_sr.php i lang_en.php za pocetak

u mysql-u napravi 2 tabele tipa News za dva razlicita jezika videces iz koda...

Code:

<?php
//ovo je fajl lang_sr.php
$db_table = "news_sr";

$tekst1 = "Naslov";
$tekst2 = "Tekst";
?>



Code:

<?php
//ovo je fajl lang_en.php
$db_table = "news_en";

$tekst1 = "Title";
$tekst2 = "Text";
?>


Code:

<?php
//ovo je fajl index.php

//OVDE NAPISI KOD ZA KONEKCIJU SA MYSQL-om ako je koristis dole (naveo sam je u primeru da odma i to pokapiras)

if (!isset($_GET["lang"])) $lang = "en"; else $lang = $_GET["lang"]; //da nista ne prifali

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

$result = mysql_query("SELECT * FROM $db_table"); //ovo razumes
$row = mysql_fetch_array($result");

$nestoizbaze1 = $row["nestoizbaze1"];
$nestoizbaze2 = $row["nestoizbaze2"];

//sad echoujes html strane sa tim da linije koje su promenljive izgledaju po principu
echo "<nekitag>$tekst1: $nestoizbaze1 </nekitag>";
echo "<nekitag>$tekst2: $nestoizbaze2 </nekitag>";
?>


Kod sam kucao direktno ovde tako da mozda ima poneka greska al nadam se da si shvatio sustinu
18.06.2007. u 20:46 

Mauro 2410
Stipe Klarić
Šibenik

Član broj: 149201
Poruke: 4
*.adsl.net.t-com.hr.



Profil

icon Re: Multilanguage stranice u PHP-u18.06.2007. u 21:41
Sorry šta sam prezahtjevan, ali ima li neko jednostavnije rješenje bez upotrebe MySQL-a?
18.06.2007. u 21:41 

hatebreeder
Sinisa Bobic
Belgrade

Član broj: 48145
Poruke: 191
*.cpe.vektor.net.

Jabber: sinisabobic@gmail.com
ICQ: 339407553
Sajt: www.sinisabobic.com


Profil

icon Re: Multilanguage stranice u PHP-u18.06.2007. u 22:05
Pa naravno da ima

Code:

<?php
//ovo je fajl lang_sr.php
$tekst1 = "Naslov";
$tekst2 = "Tekst";

$nekitekst1 = "tralala";
$nekitekst2 = "proba123";
?>


Code:

<?php
//ovo je fajl lang_en.php
$tekst1 = "Title";
$tekst2 = "Text";

$nekitekst1 = "blabla";
$nekitekst2 = "test123";

?>


Code:

<?php
//ovo je fajl index.php

if (!isset($_GET["lang"])) $lang = "en"; else $lang = $_GET["lang"]; //da nista ne prifali

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

//sad echoujes html strane sa tim da linije koje su promenljive izgledaju po principu
echo "<nekitag>$tekst1: $nekitekst1 </nekitag>";
echo "<nekitag>$tekst2: $nekitekst2 </nekitag>";
?>


evo uz male prepravke to ti je to sto si trazio za pocetak nadam se da si shvatio ideju...
18.06.2007. u 22:05 

mVeliki
Miroslav Ćurčić
Novi Sad

Član broj: 19034
Poruke: 598
*.dynamic.sbb.co.yu.



Profil

icon Re: Multilanguage stranice u PHP-u18.06.2007. u 23:05
Ovo poslednje hatebreeder-ovo rešenje ti je najzgodnije (rečnik-datoteka).

Najbrže je sa stanovišta izvršavanja skripta, a i pruža ti šire mogućnosti, recimo možeš u svakoj da pored samih reči uneseš i neku logiku ako je potrebno.
Ja recimo tu dodajem setlocale funkciju da mi (pokuša) prilagoditi sistem tom jeziku.

Jedina mana je što ne možeš napraviti on-line prevodilac/editor samih reči.

Ipak malo doradi ovaj deo: $lang = $_GET["lang"]; tako što ćeš u sledećem redu dodati:
if(!in_array($lang, array('en','sr','ba'))) $lang='en';
"The quieter you become, the more you are able to hear."
18.06.2007. u 23:05 

hatebreeder
Sinisa Bobic
Belgrade

Član broj: 48145
Poruke: 191
*.cpe.vektor.net.

Jabber: sinisabobic@gmail.com
ICQ: 339407553
Sajt: www.sinisabobic.com


Profil

icon Re: Multilanguage stranice u PHP-u19.06.2007. u 21:07
mVeliki dao sam najjednostavniji primer al kao proveru bolje da ne uzima array vec da proveri da li postoji fajl sa zadatim jezikom preko file_exists() i mislim da je to skroz dovoljno za pocetak ovakvog pristupa problemu

Edit: palo mi na pamet da moze da se uradi i
Code:
require_once("lang_$lang.php") or include("lang_en.php");
ovo mislim da je jos elegantnije al ipak nisam obrisao gornju polovinu posta
19.06.2007. u 21:07 

Mauro 2410
Stipe Klarić
Šibenik

Član broj: 149201
Poruke: 4
*.adsl.net.t-com.hr.



Profil

icon Re: Multilanguage stranice u PHP-u19.06.2007. u 22:23
Puno hvala na pomoći
Uspio sam riješiti problem : )
19.06.2007. u 22:23 

[es] :: PHP :: Multilanguage stranice u PHP-u

[ Pregleda: 1045 | Odgovora: 10 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.