[Hilfe]Sprache per Cookies setzen

  • Ich komme gleich zur sache und zwar wollte ich meine HP zwei Sprachen fähig machen.. Nur ich hab noch ein Problem..
    So siehts momentan aus:

    Undzwar möchte ich das wenn man auf das Bild klickt der entsprechende COOKIE gesetzt wird.. (Also ich klicke auf das Deutsche Bild und dann soll es POST[ger] weiter geben
    Daher meine frage wie kann man das lösen ohne das man z.b. Radio Buttons und nen Submit hinzufügt?

    Danke für jede hilfe

    [COLOR=#000000][COLOR=#FF8000][CENTER]
    [/CENTER]
    [/COLOR][/COLOR]

  • Verlink die Flaggen doch mit auswertung.php?lang=en/de und lese in der auswertung.php dann ab, welche Variable gewählt wurde mit if ($_GET['lang'] == "en") {cookie oder session oder sonst was} und leite dann wieder zurück zur index.php und frage dann nochmal ab, welche sprache gewählt wurde. Dann musst du halt in der index.php am Anfang if ($_GET['lang'] == "") {$_GET['lang'] == "en"} machen, sofern du Englisch als Standardsprache haben willst. Weißt du wie ich das meine?^^

    [COLOR=Red][/COLOR][CENTER]
    [/CENTER]

  • Danke schonmal ;) Ich glaub ich verstehs ansonsten hast du mich auf ne andere Idee mit $_SERVER['REQUEST_URI'] gebracht damit sollte es auch gehen.

    [COLOR=#000000][COLOR=#FF8000][CENTER]
    [/CENTER]
    [/COLOR][/COLOR]

  • Ich hätte eine alternative im Angebot, wenn du nur möchtest, dass es eine Sprachauswahl gibt (jedoch ohne Cookie):

    Hier könntest du statt dem echo mit Hilfe der header-Function
    header(Location:...) eine Weiterleitung anfügen, oder via XML ganze Sprachkonstrukte dann austauschen :).

    Doch möchtest du unbedingt, dass Cookies verwendet werden?
    Dann frage mich morgen erneut, sollte ich Zeit dazu finden.
    Hierfür hat mein Kopf gerade so ausgereicht x).

  • Hab es nun wie gesagt mit REQUEST gelöst, ging relativ einfach wenn man auf die Idee kommt :)

    Sieht nun so aus..
    Ps. ich bräuchte es mit COOKIES da es 1. gespeichert werden soll und 2. lang_en/ger.php included werden muss..

    [COLOR=#000000][COLOR=#FF8000][CENTER]
    [/CENTER]
    [/COLOR][/COLOR]

  • Dennoch benötigst du hier keine Form-Tags. Eine einfache Verlinkung reicht hier aus, da auch auch ohne Form-Tag eine Anfrage über
    HTTP, bzw genauer gesagt die GET-Methode gesendet wird und in der Superglobalen "$_REQUEST" (und $_GET) gespeichert wird.

    Doch dies nur am Rande.^^
    //Virtual

  • Warum machst du es nicht mit SESSION?

  • Weil es ne weile halten soll ;) nicht nur die Browser Session. Sonst müsste man jedes mal wieder Englisch/Deutsch auswählen, wenn man den Browser neustartet bzw überhaupt startet..

    [COLOR=#000000][COLOR=#FF8000][CENTER]
    [/CENTER]
    [/COLOR][/COLOR]

  • Ich hab es ja nun so gelöst


    Funktioniert einwandfrei ;) Aber trotzdem danke für deine mühe mir zu helfen..

    [COLOR=#000000][COLOR=#FF8000][CENTER]
    [/CENTER]
    [/COLOR][/COLOR]

  • Sprich mit anderen worten erstellst du für jeden Sprachenwechseln ein neues Cookie. Oder wird das alte Standardmäßig überschrieben?? Sorry das ich frage aber ich arbeite nicht mit Cookies :D

  • Zitat von ulle;251508

    Sprich mit anderen worten erstellst du für jeden Sprachenwechseln ein neues Cookie. Oder wird das alte Standardmäßig überschrieben?? Sorry das ich frage aber ich arbeite nicht mit Cookies :D


    öhm die anzeige für die Sprach auswahl wird bei mir ausgeblendet sobald man die Sprache ausgewählt hat, wenn der Cookie nach eig. 7 Tagen abläuft wird die anzeige wieder eingeblendet und man kann wieder auswählen..

    [COLOR=#000000][COLOR=#FF8000][CENTER]
    [/CENTER]
    [/COLOR][/COLOR]

  • Na es scheint zu funktionieren und das zählt ;)
    -> Bist ja nur traurig weil ich dir nicht gesagt habe wie meine Account Tabelle aufgebaut ist und deine SQL Injections schief gingen.

    [COLOR=#000000][COLOR=#FF8000][CENTER]
    [/CENTER]
    [/COLOR][/COLOR]

  • Das Leute es überhaupt nötig haben Injections zu versuchen um anderen zu schaden find ich dann eher den schwerwiegenderen Grund um ein Schamgefühl zu entwickeln ;)

  • Wenn ich ihm hätte schaden wollen, hätte ich auch einfach nen
    Shell Hochladen können oder alle DB'en löschen können.

    Hab ich aber nicht getan ;)

  • Zitat von Synaptic;255634

    Wenn ich ihm hätte schaden wollen, hätte ich auch einfach nen
    Shell Hochladen können oder alle DB'en löschen können.

    Hab ich aber nicht getan ;)



    dann tus doch ;) soll ja angeblich irgendwelche scripts von dir beinhalten, wie gesagt wenn das der fall ist geh ich mich erhängen :)
    was soll denn da der falls sein die sonder zeichen wurden rausgefiltert und mssql infjections wie '-shutdown oder wie auch immer funktionert nicht bei mysql ;)

    [COLOR=#000000][COLOR=#FF8000][CENTER]
    [/CENTER]
    [/COLOR][/COLOR]

  • Und was hat das mit dem Thema zu tun?
    Also meiner Meinung nach is es unnötige Arbeit bei Sprachen mit Sessions zu arbeiten. Für die SEO is es ohnehin besser die Sprache als Parameter mitzugeben.

    Wenn deine Website ne Accountverwaltung hat ist es sinnvoller die Sprache für den jeweiligen Nutzer in der DB abzulegen.

    Ansonsten ist die Seite eine reine Infoseite, deshalb würde ich hier die Sprache über den User Agent auslesen oder eben den Benutzer selbst wählen lassen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!