php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.01.2006, 18:55  
Gast
 
Beiträge: n/a
Standard Sprache auf Webseite ändern

Hi
Ich will auf einer Index.php per dropdownmenü die Sprache ändern.
So sieht der Teil der Index.php aus:

Code:
echo "<form method=post>";
 echo "<select size=1 name=\"language\">";
$handle=opendir('/usr/export/www/vhosts/***/.../***/DMStest/language');
  while ($file = readdir ($handle))
  {
    if ($file != "." && $file != "..")
     {
      echo "<option value=\"$file\">$file</option>\n";
     }
   }
  closedir($handle);
  echo "</select>";
  echo "  ";
  echo "<input type=submit name=\"post\" value=\"$array[167]\" >";
  if ($_POST['language']=="german")
  {setcookie ("Language","german", time() + 86400);
 echo "<script language=\"javascript\">document.location.reload('1')</script>";}
  if ($_POST['language']=="english")
  {setcookie ("Language","english", time() + 86400);
   echo "<script language=\"javascript\">document.location.reload('1')</script>";}
echo "</form>";
Am Anfang der Datei wird überprüft ob Cookie gesetzt ist und entsprechend wird die Sprache geladen:
Code:
if (isset($_COOKIE['Language']))
  {
   $language = $HTTP_COOKIE_VARS[Language];
   $string1 = "/usr/export/www/.../.../../../DMStest/language/".$language;
   copy($string1,"/usr/export/www/.../.../../../DMStest/tmp/language");
   $datei = ,"/usr/export/www/.../.../../../DMStest/tmp/language";
   $array = file($datei);	  
  }
else
{
   $language = "german";
   $datei = "/usr/export/www/.../.../../../DMStest/tmp/default";
   $array = file($datei);
}
Mit diesem Code sollte die Index.php in die entsprechende Sprache übersetzt werden.
Das Problem ist das die Seite neu geladen werden muss um die Sprache zu aktualisieren, doch bei meiner Methode wird die Seite bis ins unendliche neu geladen.
Wer kann mir ne Lösung sagen das die Seite enweder gleich bei der Auswahl im dropdownmenü gewechselt wird oder aber wenn ich auf den Button drück und die Seite dadurch nur einmal neu geladen wird?
mfg
ben
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 08.01.2006, 02:50  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Warum gibst Du denn immer das Zeugs da aus?
Code:
<script language=\"javascript\">document.location.reload('1')</script>
Ich kenn mich mit JS nicht besonders aus.
Sollte das nicht nur unter irgendeiner Bedingung ausgeführt werden. So in einem Event-Handler?

Wozu soll das überhaupt gut sein?
Wenn Du mit POST schon einen neuen Wert übergeben hast, warum dann nochmal neu laden? Nach dem POST hast Du doch schon die neue Sprache.

Irgendwie kommt mir der Aufbau etwas komisch vor.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 08.01.2006, 13:25  
Gast
 
Beiträge: n/a
Standard

ich gebs aus damit die seite akutalisiert wird um zu sehn ob das mit der sprache klappt...

dachte ich auch das mit post alles gut wird, wirds aber nicht, frag mich nich wieso.
immer wenn ich auf post gedrückt hab hat er zwar den cookie gesetzt aber nich die sprache aktualisiert. wenn ich aber n manuellen reload gemacht hab dann war die sprache geändert...

zum aufbau: bin halt noch n anfänger, daher Anfängerforum :wink:
 
Alt 08.01.2006, 13:44  
Erfahrener Benutzer
 
Registriert seit: 08.05.2005
Beiträge: 814
andy
andy eine Nachricht über ICQ schicken
Standard

Noch ein paar Anmerkungen:

- Jede Zeile ein echo muss nich sein.
- ' würde dir einiges an escapen ersparen.
- $_COOKIE['Language'] und $HTTP_COOKIE_VARS[Language] ?
__________________
Zitat:
Diese Erweiterung ist EXPERIMENTELL.
[...]
Seien Sie gewarnt und verwenden Sie diese Erweiterung auf eigenes Risiko..
andy ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Inhalt von einer webseite kopieren indian PHP Tipps 2008 10 13.05.2008 15:14
Komplette Webseite bleibt "stehen" crazyhead PHP-Fortgeschrittene 4 01.09.2007 17:58
Webseite auslesen Katrin PHP Tipps 2006 6 21.04.2006 20:43
rss/xml Feeds auf Webseite einbinden PHP Tipps 2005-2 2 29.10.2005 13:44
[Erledigt] Frage zu Webseite PHP Tipps 2005-2 1 26.10.2005 21:18
Sprache einer Seite wechseln mercurio PHP Tipps 2005-2 9 06.09.2005 13:19
Problem: Text von einer Webseite mit PHP kopieren PHP Tipps 2005-2 6 05.09.2005 19:20
Merhsprachige Webseite PHP-Fortgeschrittene 10 28.07.2005 00:49
Mehrsprachige Webseite PHP Tipps 2005-2 4 08.07.2005 08:19
Sprache des Clients herausfinden PHP Tipps 2005-2 2 05.07.2005 15:23
was ist das für ein script sprache .elm PHP Tipps 2005 10 02.06.2005 20:24
[Erledigt] Automatisches neu laden der ganzen Webseite HTML, Usability und Barrierefreiheit 7 26.01.2005 08:38
Webseite baune PHP Tipps 2004-2 9 21.11.2004 21:45
[Erledigt] Sprache vom Browser herausfinden. PHP Tipps 2004 19 29.09.2004 08:53

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
vbulletin sprache ändern, php sprache wechseln, http://www.php.de/php-tipps-2006/35622-sprache-auf-webseite-aendern.html, php sprache ändern, website sprache ändern, website sprache wechseln, if ($http_cookie_vars[\language\]!=\\), sprache auf webseite ändern, javascript srpache ändern, language auf webseite ändern, sprache wechseln webseite, sprache auf einer seite ändern, homepage 2 sprache, homepage sprache ändern, php sprache laden, vbulletin sprache umstellen, sprache einer webseite verändern, sprache ändern webseite, sprache ändern vbulletin, sprache wechseln php

Alle Zeitangaben in WEZ +2. Es ist jetzt 11:11 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.