tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
12
ZUGRIFFE
1136
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Registriert seit
    Oct 2005
    Ort
    Nottuln
    Beiträge
    1.282
    Halli Hallo,

    ich habe eine Frage. Ich arbeite an einem Projekt, was später vielleicht auch einen Sprachwechsel haben soll....

    Das Problem ist, dass eigentlich alle Inhalte aus der Datenbank kommen.
    Gibt es dort eine Möglichkeit, einen Sprachwechsel durchzuführen, außer alle Inhalte einzeln zu speichern?


    mfG
    David
     
    Nein, ich bin kein Programmier-könig. Aber Spaß macht es trotzdem!

  2. #2
    splasch splasch ist offline Mitglied Brillant
    Registriert seit
    Jul 2004
    Beiträge
    854
    Das Problem ist, dass eigentlich alle Inhalte aus der Datenbank kommen.
    Gibt es dort eine Möglichkeit, einen Sprachwechsel durchzuführen, außer alle Inhalte einzeln zu speichern?
    Warum ist das ein Problem? Das ist doch sehr gut wenn die Daten aus der Datenbank kommen.
    Wenn ein Sprache sauber und koreckt übersetz werden soll dann kommste sowie so nicht darum die Textsachen und Menü sachen zu Speichern.(Eben für jede Sprache einmal)

    Oder wie hast du dir das sonst vorgestellt das die Seite erst dann online Übersetz werden soll? Sowie bei bei Google Translater.Wo dann alles falsch dort steht oder aus dem zusammen hang gerießen ist.

    Mfg Splasch
     

  3. #3
    Avatar von preko
    preko preko ist offline Mitglied Brokat
    Registriert seit
    Jun 2004
    Ort
    Mönchengladbach
    Beiträge
    397
    sorry, war zu früh am Morgen - hatte die Frage falsch verstanden.

    Bitte Beitrag von mir löschen - Danke!


    Beste Grüße,
    preko
    Geändert von preko (17.09.07 um 08:08 Uhr)
     
    Wem das Wasser bis zum Hals steht, sollte den Kopf nicht hängen lassen.

    Was man heute Rap-Musik nennt, hieß früher Stottern und war heilbar...

    Es gibt zwei Wege im Leben - den schweren und den falschen!
    -----------------------------------------------------------------------------------------------------
    http://www.prenociste-mir.com
    -----------------------------------------------------------------------------------------------------

  4. #4
    Avatar von Igäl
    Igäl Igäl ist offline Mitglied Brokat
    Registriert seit
    Aug 2007
    Ort
    Winterthur
    Beiträge
    280
    Du wirst nicht darum herum kommen, deine Inhalte selber zu übersetzen. Die Lösung, die verschiedenen Sprachen dann aus der Datenbank zu holen, ist dann eigentlich gut.

    Ich hab das allerdings früher so gelöst, dass für jede Sprache ein eigenes Konstantenfile hatte, welches je nach Sprachwahl dann eingebunden wurde. Das heisst: Jegliche Textausgabe auf der Seite steht als Konstante im Quelltext und wird dann zur Laufzeit eingebunden.

    Bsp:
    PHP-Code:
    //german.const.php
    define("CONST_WELLCOME""Willkommen");
    define("CONST_GOODBYE""Auf wiedersehen");

    //french.const.php
    define("CONST_WELLCOME""Bienvenu");
    define("CONST_GOODBYE""Au revoir");

    //english.const.php
    define("CONST_WELLCOME""Wellcome");
    define("CONST_GOODBYE""Good bye"); 
    Auf der Seite siehts dann halt so aus:
    PHP-Code:
    switch($_SESSION['language'])  {
        case "ger": include_once("german.const.php");
        break;
        case "fra": include_once("french.const.php");
        break;
        case "eng": include_once("english.const.php");
        break;
        default: include_once("german.const.php");
    }

    //Auf der Seite dann irgendwo:
    <p><?php echo CONST_WELLCOME." ".$_SESSION['UserName']; ?></p>
    <p><?php echo CONST_GOODBYE." ".$_SESSION['UserName']; ?></p>
    Grusse
    De Igäl
     

  5. #5
    Registriert seit
    Oct 2005
    Ort
    Nottuln
    Beiträge
    1.282
    Guten Morgen,

    das Thema ist ja schon etwas her, aber was solls.

    Habe das jetz so angegangen, ich frage besser gleich, bevor ich mir die Arbeit mache.

    Ich habe ja Smarty Templates und mache das jetzt so.

    Eine Konstante für die Sprache LANGUAGE, ist de oder en.
    Dann wird so das Template angezeigt:

    PHP-Code:
    $tpl->display('index_'.LANGUAGE.'.tpl'); 
    Das heißt, ich habe immer 2 Templates im Ordner.
    index_de.tpl
    index_en.tpl

    Ebenso in der Datenbank, z.B. News

    news_id
    news_author
    news_de_title
    news_en_title
    news_de_text
    news_en_text
    news_date

    Ist das gut so?
     
    Nein, ich bin kein Programmier-könig. Aber Spaß macht es trotzdem!

  6. #6
    Avatar von Loomis
    Loomis Loomis ist offline Mitglied Bunt
    Registriert seit
    Jul 2002
    Ort
    Aschaffenburg
    Beiträge
    1.538
    Datenbank würde ich eher so machen:

    Eine Tabelle:

    news_id
    news_author
    news_date

    Noch eine Tabelle:

    news_id
    news_title
    news_text
    news_lang => hier dann die Sprache, kannst du zum Beispiel ein enum mit de/en machen...

    Dann brauchst du auch nurnoch ein Template:

    PHP-Code:
    $tpl->display('index_.tpl'); 
    Denn du lässt je nach Sprachauswahl immer die passende Zeilen aus der DB holen.

    Man kann das auch ganz anders lösen. So ist das relativ leicht und ausserdem kann man
    so dann später weitere Sprachen hinzufügen.
     

  7. #7
    Registriert seit
    Oct 2005
    Ort
    Nottuln
    Beiträge
    1.282
    Aber wie ist das dann mit statischem Text, zum Beispiel ein Text der nicht aus der Datenbank kommt?
     
    Nein, ich bin kein Programmier-könig. Aber Spaß macht es trotzdem!

  8. #8
    Avatar von Loomis
    Loomis Loomis ist offline Mitglied Bunt
    Registriert seit
    Jul 2002
    Ort
    Aschaffenburg
    Beiträge
    1.538
    Statische Texte (Impressum etc.) könntest du doch auch in der Datenbank ablegen.
    Dann hast du das auch mehrsprachig und kannst das sogar bequem über ein Webinterface (Adminbereich) online editieren.

    z.B.:

    Tabelle1
    content_id
    content_author
    content_date


    Tabelle2
    content_id
    content_title
    content_text
    content_lang
     

  9. #9
    Registriert seit
    Oct 2005
    Ort
    Nottuln
    Beiträge
    1.282
    Also im Prinzip nen kleines CMS.

    Dann könnte man doch, um das ganze sehr variabel für die Gestaltung zu machen, sowas in der Art machen:

    Ich gebe im Editor ein:
    Code :
    1
    2
    3
    4
    5
    6
    7
    
    News
     
    Willkommen auf meiner Seite blablabla
     
    [Modul: News]
     
    Und so weiter

    Edit sagt noch, dass das [Modul: News] alle News einbinden soll

    Oder nicht?
    Geändert von Kalma (10.02.08 um 18:08 Uhr)
     
    Nein, ich bin kein Programmier-könig. Aber Spaß macht es trotzdem!

  10. #10
    R00Ki3 R00Ki3 ist offline Mitglied Gold
    Registriert seit
    Oct 2004
    Ort
    NRW
    Beiträge
    247
    Für statische texte kannst du auch für jede sprache ne xml datei anlegen...
    Und den Platzhalter mit den werten füllen...
     

  11. #11
    Registriert seit
    Oct 2005
    Ort
    Nottuln
    Beiträge
    1.282
    Ich mach das einfach so im Code:


    HTML-Code:
    {if (LANGUAGE == DE)}
    Willkommen
    {else}
    Welcome
    {/if}

    Oder wäre das mit den Modulen leicht realisierbar? (weiter oben)
     
    Nein, ich bin kein Programmier-könig. Aber Spaß macht es trotzdem!

  12. #12
    caramba12321 caramba12321 ist offline blödefragensteller
    Registriert seit
    Jan 2005
    Ort
    Flensburg
    Beiträge
    259
    die modulare Variante ist auf jeden Fall die bessere. Ist am Anfang zwar etwas mehr Arbeit aber besonders bei größeren Projekten rentiert es sich später, alleine schon weil dein eigentlicher Quelltext um einiges kleiner und übersichtlicher bleibt.
     

  13. #13
    Registriert seit
    Oct 2005
    Ort
    Nottuln
    Beiträge
    1.282
    Könnte ich nicht folgendes machen?
    1. Texte nach [MODUL: (?)] dursuchen
    2. [MODUL: (?)] auseinandernehmen und das folgende Modul einladen.

    Achja, dann würde ich ja:
    - index.php (Zum sprache auswählen)
    - content.php (Wo der Inhalt reingeladen wird)
    - news.php (zum Beispiel das News Menü)

    Würde dass so laufen?
     
    Nein, ich bin kein Programmier-könig. Aber Spaß macht es trotzdem!

Ähnliche Themen

  1. sprachwechsel durch preg_replace
    Von xlanhackerx im Forum PHP
    Antworten: 2
    Letzter Beitrag: 01.09.08, 14:56
  2. Darstellung von PHP-Inhalten in PNG
    Von Balu50 im Forum PHP
    Antworten: 1
    Letzter Beitrag: 31.03.08, 21:24
  3. Ersetzen von Inhalten
    Von bf-wiesbaden im Forum PHP
    Antworten: 9
    Letzter Beitrag: 28.08.07, 13:57
  4. Presentation mit "dynamischen Inhalten"
    Von Flextone im Forum Flash Plattform
    Antworten: 1
    Letzter Beitrag: 02.09.05, 10:44
  5. Antworten: 10
    Letzter Beitrag: 12.08.04, 10:43