Supportnet / Forum / Skripte(PHP,ASP,Perl...)
mehrspachige Seiten mit PHP
Frage
PHP ist für mich recht neu. Ich möchte meine Webseite in Deutsch und Englisch anbieten.
Der Inhalt der Webseiten kommt aus einer Datenbank bzw. teilweise auch aus Textdatein.
Ich möchte nicht, dass der Besucher der Seite erst die Spache wählen muss. Das kann man ja mit MultiViews des Apache lösen. Funktioniert auch!
Jetzt möchte ich aber nicht immer für jede Seite zwei Datein (sprich eine dt ein en), was ja MultiViews voraussetzt.
Ich habe mir das so überlegt. Die Einstiegsseiten werden noch mit MultiViews abgearbeitet, sprich:
index.php.de
index.php.en
index.php.php
Diese Leiten dann z.b. auf content.php weiter. Wie kann nun die Seite content.php feststellen, ob sie deutsche oder englische Inhalte darstellen muss?
Wie gesagt ich bin Anfänger. Was gibt es da für Möglichkeiten. Mit Cookies oder PHPLib müsste das doch zu realisieren sein. Was ist die beste Methode, oder gibt es noch andere.
Gibt es zu diesem Thema ein gutes Buch? Seite?
Antwort 1 von dA_pApZt
Du machst das einfach so, indem du eine Variable für die Sprache per url übergibst.. zB
<a href="deineunterseite.php?sprache=diemusserhaltgewählthaben ... </a>
diemusserhaltgewählthaben musst du halt irgendwie auf zB $sprache definieren, und dann kannst du so deine variable übergeben.. darauf kannste den rest aufbauen
dabei bedeuted das "?" , dass da die variablen kommen, und wenn du mehrere variablen übergeben willst machst du das so;
irgendneSeite.php?name=deiner&seiner=keiner&id=blubb
, also variablen mit & trennen.. id = blubb und so weiter haste nun auf deiner irgendNeSeite.php
grüß gott von mir
<a href="deineunterseite.php?sprache=diemusserhaltgewählthaben ... </a>
diemusserhaltgewählthaben musst du halt irgendwie auf zB $sprache definieren, und dann kannst du so deine variable übergeben.. darauf kannste den rest aufbauen
dabei bedeuted das "?" , dass da die variablen kommen, und wenn du mehrere variablen übergeben willst machst du das so;
irgendneSeite.php?name=deiner&seiner=keiner&id=blubb
, also variablen mit & trennen.. id = blubb und so weiter haste nun auf deiner irgendNeSeite.php
grüß gott von mir
Antwort 2 von semi
In index.php.de
<?php
$language = "de";
include('index.php');
?>
index.php.en
<?php
$language = "en";
include('index.php');
?>
In index.php
kannst Du dann prüfen, was in $language steht und entsprechend reagieren.
Gruß,
Michael
<?php
$language = "de";
include('index.php');
?>
index.php.en
<?php
$language = "en";
include('index.php');
?>
In index.php
kannst Du dann prüfen, was in $language steht und entsprechend reagieren.
Gruß,
Michael
Antwort 3 von am22
Danke Michael,
genau so werde ich es wohl machen. Am besten ich speicher das in einem Cookie ab, oder macht man das besser über Session?
genau so werde ich es wohl machen. Am besten ich speicher das in einem Cookie ab, oder macht man das besser über Session?
Antwort 4 von :mfg*ra-hoch3:
ich würde es über eine Session machen, aber das oben geht auch.

