php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 04.01.2012, 08:55  
Neuer Benutzer
 
Registriert seit: 04.01.2012
Beiträge: 3
PHP-Kenntnisse:
Anfänger
essenCe121 befindet sich auf einem aufstrebenden Ast
Standard Problem mit Mehrsprachauswahl - Fehlerhaftes PHP-Skript?

Schönen guten Morgen,

zum Sachverhalt: Wir haben eine mehrsprachige Unternehmens-Homepage, auf der man aus einer Dropdown-Liste eine von 13 festgelegten Sprachen auswählen kann und die Homepage daraufhin in dieser gewählten Sprache angezeigt wird. Die Inhalte der einzelnen Sprachen sind im Typo3 angelegt. Definiert sind die Sprachen in einer language.ts. Die Funktionalität, die jeweilige Seite in einer gewählten Sprache anzuzeigen, liegt in einer language.php. Das Problem ist nur, dass wenn man nun die Sprache gewechselt hat und eine andere Seite auf der Homepage aufruft, sich die Sprache dann wieder auf die Standardsprache (Deutsch) umstellt. Ich habe die Vermutung, dass die ausgewählte Sprache schlichtweg nicht in einer Variable gespeichert wird, nur leider habe ich KEINE! Ahnung von PHP und auch nicht die Zeit mich da jetzt schnell einzuarbeiten und die fehlerhaften Programmierungen meiner Vorgänger zu verbessern/korrigieren! Ich hoffe wirklich, dass nur eine der language-Dateien den Fehler verursacht und jemand von euch mit vorhandenem Wissen weiterhelfen kann. So sind die einzelnen Sprachen in der language.ts definiert (eine nach der anderen mit entsprechenden IDs):

Code:
[globalVar = GP:lang = en]
  config.sys_language_uid = 1
  config.language = en
[end]
Und so sieht die language.php aus:

PHP-Code:
<?php

$query 
strtolower($_SERVER["QUERY_STRING"]);
parse_str($query$vars);
$clang $vars["lang"];

$langs = array(
    
"de" => "Deutsch",
    
"en" => "English",
    
"es" => "Español",
    
"el" => "ελληνικά",
    
"hr" => "Hrvatski",
    
"lt" => "lietuvių",
    
"hu" => "magyar",
    
"pl" => "Polski",
    
"ro" => "Romana",
    
"ru" => "русский",
    
"ua" => "україньска",
    
"tr" => "Türkçe",
    
"sr" => "српски"
);

$opts = array();
foreach (
$langs as $id => $name)
{
    
$opts[] = "<option ".($clang==$id?"selected ":" ")."value=\"".$id."\">".$name."</option>";
}

$langselector "<select onChange=\"document.location='index.php?id=".$GLOBALS["TSFE"]->id."&lang='+this.value;\">".implode("",$opts)."</select>";

$content $langselector;
?>
Wie schon gesagt: die Zeit drängt und ich habe keine Kenntnisse darin - vom Programmieren generell schon, kenne PHP und die Intentionen der Leute die das Erstellt haben nicht. Ich hoffe wirklich das ihr mir helfen könnt. Vielen Dank!
essenCe121 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 04.01.2012, 13:21  
Erfahrener Benutzer
 
Registriert seit: 06.04.2009
Beiträge: 251
PHP-Kenntnisse:
Fortgeschritten
BlackSpirit befindet sich auf einem aufstrebenden Ast
BlackSpirit eine Nachricht über MSN schicken
Standard

Hi,

dieser Code ist einfach zu wenig, -> index.php?id=".$GLOBALS["TSFE"]->id."&lang='+this.value; hier findet vermutlich die Änderung der Sprache statt.

lg
__________________
Lerne, Software zu schätzen und bedanke dich für die positiven Aspekte, bevor der Entwickler die Motivation zum weiterentwickeln verliert.
BlackSpirit ist offline   Mit Zitat antworten
Alt 05.01.2012, 08:26  
Neuer Benutzer
 
Registriert seit: 04.01.2012
Beiträge: 3
PHP-Kenntnisse:
Anfänger
essenCe121 befindet sich auf einem aufstrebenden Ast
Standard

Hallo und vielen Dank für deine Antwort!

Ich habe mir die Homepage gestern genauer angeschaut und mit allen gängigen Browsern in der aktuellsten Version getestet (bevor ich die Frage gestellt habe nur mit Chrome). Es scheint so als würde dieses Problem nur in Chrome und auch nur beim Wechsel von bestimmten Seiten auftreten, denn im Internet Explorer läuft die Seite ohne Probleme.

Ich denke das Thema hier kann geschlossen werden, weil es wohl kein Fehler in den besagten PHP-Skripten ist. Vielleicht wirklich nur eine Browsereinstellung...trotzdem Danke fürs bemühen
essenCe121 ist offline   Mit Zitat antworten
Alt 05.01.2012, 09:07  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard

Da die Sprach-ID dauerhaft gespeichert werden muss, wird sie in einer Session oder Datenbank oder einem mitgeschleppten Hidden-Feld gespeichert.

Die vierte Möglichkeit wäre in einem Cookie und da der browserseitig abgelehnt werden kann würde ich mal nachschauen, ob Dein Chrome Cookies annimmt.
__________________
Es ist schon alles gesagt. Nur noch nicht von allen.
drsoong ist offline   Mit Zitat antworten
Alt 07.01.2012, 11:25  
Neuer Benutzer
 
Registriert seit: 04.01.2012
Beiträge: 3
PHP-Kenntnisse:
Anfänger
essenCe121 befindet sich auf einem aufstrebenden Ast
Standard

Hallo noch mal,

vorab: das Problem besteht nicht mehr.

Lösung: Ein Kollege der sich gut mit PHP und Typo3 auskennt hat sich die language.php noch mal angeschaut und eine Leerzeile vor dem ersten "<?php" entdeckt, diese entfernt, im Typo3-Backend den Cache geleert und siehe da...es funktioniert!

Mag vielleicht nicht die tollste Begründung für eine Problemlösung sein, aber da die Homepage nicht unerheblich wichtig für unsere Kunden bzw. Neukunden ist, kann ich damit gut leben.

Ich danke euch für euer Bemühen und ihr werdet von mir hören wenn das nächste mal ein Problem auftritt
essenCe121 ist offline   Mit Zitat antworten
Alt 07.01.2012, 11:55  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

In einem solchen Fall hilft die Aktivierung der Fehlerausgabe. Vermutlich konnte die Session nicht initialisiert werden.
PHP.de Wiki | Headers sent
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Antwort


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
Problem mit XML (Namespaces) Chris_3 PHP Einsteiger 17 17.11.2011 11:30
Prozessorauslastung fällt während Skript läuft (unter Ubuntu) k3kz PHP-Fortgeschrittene 12 13.05.2011 13:59
system() | MySQL Dump Syntax Problem Globe31 PHP Einsteiger 29 11.05.2011 03:56
Server2Go AjaxPost Problem bei Insert/Update Franzose Server, Hosting und Workstations 7 02.02.2011 13:10
Daten von Skript in eine DB übertragen und updaten lassen BradPat Datenbanken 5 13.01.2011 15:34
Kann man mit einem eingebundenem PHP Skript auf den Text einer HTML-Seite zugreifen? HottiWF PHP Tipps 2010 10 18.03.2010 18:20
[Erledigt] Problem mit Mehrsprachigkeit Sniper_Kotaro PHP Tipps 2009 2 16.12.2009 11:47
Umlaut Problem nokieone PHP Tipps 2009 7 16.10.2009 19:30
Problem mit eigenem Betrachtungsskript Mensch 2.0 PHP Tipps 2009 1 24.06.2009 10:05
problem mit upload skript suwofis PHP Tipps 2009 8 10.06.2009 21:45
[Erledigt] MySQL via PHP Include - merkwürdiges Problem Timer PHP Tipps 2009 7 20.03.2009 14:40
Skript auf einem anderen Server! aha_01 PHP Tipps 2008 3 05.12.2007 09:02
[Erledigt] File download &gt; kleines Problem PHP Tipps 2005 3 11.05.2005 23:11
Javascript - CountUP Skript zählt falsch.. Chr!s HTML, Usability und Barrierefreiheit 0 28.03.2005 14:32
SKRIPT GESUCHT - Werbung auf einer site anzeigen Beitragsarchiv 4 29.08.2004 14:07

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
typo3 sr language sprachen zur auswahl leer

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:49 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