Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Php Webseite mit mehreren Sprachen geht nicht

Frage Entwicklung PHP

Mitglied: Phibbo

Phibbo (Level 1) - Jetzt verbinden

24.09.2014, aktualisiert 11:08 Uhr, 1005 Aufrufe, 9 Kommentare

Moin

Ich habe ein problem.
Folgendes ich habe eine Internetseite am laufen die auf einen anderen Server umgezogen wurde.
Jetzt geht die umstellung der Sprachen nicht mehr.

01.
 
02.
 
03.
<?php 
04.
include ("oben.php"); 
05.
?> 
06.
 
07.
<?php if ($language == "de") { ?>             
08.
			 
09.
			<br> 
10.
<table width="451" height="396" border="0" align="center" cellspacing="0" cellpadding="0"
11.
              <tr>  
12.
                <td colspan="2" class="textoben">Schneidleistenherstellung seit  
13.
                  &uuml;ber 30 Jahren!<br> 
14.
                  Weltweiter Vertrieb!</td> 
15.
              </tr> 
16.
              <tr>  
17.
                <td width="199" class="textmitte">Moderne Fertigungstechnologien,  
18.
                  qualifiziertes Personal und qualitativ hochwertige Produkte,  
19.
                  garantieren Ihnen f&uuml;r jeden Bedarf ein optimales Produkt.  
20.
                  Selbst enge Toleranzen werden eingehalten und die speziell bearbeiteten  
21.
                  Oberfl&auml;chen der Messer erm&ouml;glichen ein einwandfreies  
22.
                  Schneiden. Das verbessert die Qualit&auml;t des Schnittgutes  
23.
                  und die Arbeitsproduktivit&auml;t.</td> 
24.
                <td align="center" width="252"><img src="images/sl.jpg" width="200" height="139"></td> 
25.
              </tr> 
26.
              <tr>  
27.
                <td valign="top" height="87" colspan="2" class="textmitte">Wir liefern alle  
28.
                  g&auml;ngigen Schneidleisten in den Qualit&auml;ten: Rot f&uuml;r  
29.
                  Standardmesser, grau f&uuml;r Hartmetall und HSS-Messer, wei&szlig;  
30.
                  f&uuml;r Feinstkornmesser und Dreischneider.</td> 
31.
              </tr> 
32.
            </table>  
33.
			 
34.
<?php } ?> 
35.
 
36.
<?php if ($language == "en") { ?> 
37.
 
38.
 
39.
			<br> 
40.
<table width="451" height="396" border="0" align="center" cellspacing="0" cellpadding="0"
41.
              <tr>  
42.
                <td colspan="2" class="textoben">Manufacturer of Cutting Sticks for more than 30 years!<br> 
43.
                  Worldwide distribution!</td> 
44.
              </tr> 
45.
              <tr>  
46.
                <td width="199" class="textmitte">Modern manufacturing technologies, skilled personnel and high-quality materials 
47.
				guarantee an optimal product that meets any requirements. Narrow tolerances and the specialized machined surface 
48.
				of the cutting sticks enables a clean cut. This improves the quality of the cutting goods as well as labor productivity.</td> 
49.
                <td align="center" width="252"><img src="images/sl.jpg" width="200" height="139"></td> 
50.
              </tr> 
51.
              <tr>  
52.
                <td valign="top" height="87" colspan="2" class="textmitte">We deliver all marketable cutting sticks in the qualities: 
53.
				RED for standard knives, GREY for tungsten carbide and high speed steel knives, WHITE for fine grain knives and three 
54.
				knife trimmers.</td> 
55.
              </tr> 
56.
            </table> 
57.
			 
58.
<?php } ?>  
59.
 
60.
<?php if ($language == "fr") { ?> 
61.
 
62.
<br> 
63.
<table width="451" height="396" border="0" align="center" cellspacing="0" cellpadding="0"
64.
              <tr>  
65.
                <td colspan="2" class="textoben">Fabrication de plinthes de cran depuis plus de 30 ans!<br> 
66.
				  Distribution mondiale!</td> 
67.
              </tr> 
68.
              <tr>  
69.
                <td width="199" class="textmitte">Les technologies de fabrication modernes, le personnel qualifiÈ et les produits qualitativement 
70.
				de haute qualitÈ, vous garantissent un produit optimal pour chaque besoin. MÍme les tolÈrances Ètroites sont respectÈes et 
71.
				les surfaces spÈcialement travaillÈes des couteaux permettent des tranchants irrÈprochables. Cela amÈliore la qualitÈ du 
72.
				bien de coupe et la productivitÈ.</td> 
73.
                <td align="center" width="252"><img src="images/sl.jpg" width="200" height="139"></td> 
74.
              </tr> 
75.
              <tr>  
76.
                <td valign="top" height="87" colspan="2" class="textmitte">Nous fabriquons  pour toutes le reglettes en qualitÈ rouge pour 
77.
				Lames en acier standard, grise et blanc /jaune por des lames en cabure de tungstËne et lames en ancier rapide. 
78.
				</td> 
79.
              </tr> 
80.
            </table> 
81.
			 
82.
<?php } ?> 
83.
				 
84.
<?php 
85.
include ("unten.php"); 
86.
?> 
87.
 
88.
</body> 
89.
</html> 
90.
 
Das ist die index aber die umstellung der Sprache geht nicht.

Ich habe ein Debian server mit Plesk 12.
Fehlt mir da ein modul??
Die seite ist übrigends www.zank-gmbh.de.

Danke
Mitglied: SlainteMhath
24.09.2014 um 09:30 Uhr
Moin,

mach mal das schliessende code Tag bitte richtig.
Ansonsten sehe ich nicht wo/wie die Variable "$language" gefüllt wird... Get? Post? Cookie?

lg,
Slainte
Bitte warten ..
Mitglied: Phibbo
24.09.2014, aktualisiert um 09:40 Uhr
Danke hatte ich garnicht bemerkt.

Ich habe die seite so übernommen von dem anderen server. dort lief es wunderbar.

01.
<?php  
02.
if (empty($language))  { 
03.
      //  sprache vorgegeben 
04.
      
05.
     
06.
	// Verfügbare Sprachen 
07.
	$availablelanguages = "de,en,fr"
08.
	// falls kein sprache 
09.
	$defaultlanguage = "en"
10.
	// sprache ermitteln und ggf. voreinstellung 
11.
	// aktivieren 
12.
	function sprachermittlung() { 
13.
	global $defaultlanguage, $availablelanguages
14.
	$sprache = substr(getenv("HTTP_ACCEPT_LANGUAGE"),0,2); 
15.
	$available = explode (",",$availablelanguages); 
16.
	$status = 0; 
17.
	foreach ($available as $available
18.
	if ($sprache == $available) { 
19.
	$status = 1; 
20.
21.
	if ($status == 0) { 
22.
	$sprache = $defaultlanguage
23.
24.
	return $sprache
25.
26.
	$sprache = sprachermittlung(); 
27.
	$language = $sprache
28.
29.
	 
30.
?> 
31.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
32.
<html> 
33.
<head> 
34.
 
35.
<title>Zank-GmbH</title> 
36.
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
37.
<link href="text.css" rel="stylesheet" type="text/css"
38.
</head> 
39.
 
40.
<body background="images/z1.jpg"><table cellpadding="0" cellspacing="0" align="center" width="800" border="0" class="rahmenaussen">  
41.
<tr> 
42.
    <td class="holderobenlinks" width="10">&nbsp;</td> 
43.
     
44.
  <td width="400" height="70" class="head"><a href="index.php"><img src="images/logo4.gif" width="774" height="69" border="0"></a></td> 
45.
    <td width="10">&nbsp;</td> 
46.
  </tr> 
47.
  <tr> 
48.
    <td width="10" class="menue">&nbsp;</td> 
49.
     
50.
 <td align="right" class="menue"><?php if ($language == 'de') { ?>  <img src='images/einzigerhersteller.gif' width='280' height='20'> <?php } ?> 
51.
 								 <?php if ($language == 'en') { ?>  <img src='images/einzigerhersteller_en.gif' width='280' height='20'> <?php } ?> 
52.
								 <?php if ($language == 'fr') { ?>  <img src='images/einzigerhersteller_fr.gif' width='280' height='20'> <?php } ?> 
53.
 								<img src="../images/platzhalter.gif" width="400" height="1"
54.
								<a href="<?php basename($PHP_SELF); ?>?language=de"><img src="images/ger.gif" width="25" height="17" border="0"></a>&nbsp; 
55.
								<a href="<?php basename($PHP_SELF); ?>?language=en"><img src="images/eng.gif" width="25" height="17" border="0"></a>&nbsp; 
56.
								<a href="<?php basename($PHP_SELF); ?>?language=fr"><img src="images/fra.gif" width="25" height="17" border="0"></a></td> 
57.
    <td width="10" class="menue">&nbsp;</td> 
58.
  </tr> 
59.
  <tr> 
60.
    <td class="main">&nbsp;</td> 
61.
    <td height="480" class="main"><br> 
62.
 
63.
	 
64.
	 
65.
	<!--Neue Tabelle--> 
66.
       
67.
	  <table align="center" width="780" height="450" border="0" cellpadding="0" cellspacing="0"
68.
        <tr>  
69.
          <td width="121" valign="top">  
70.
            <!--Menü Tabelle---> 
71.
            <table cellpadding="0" cellspacing="5" width="134" border="0"
72.
              <tr> 
73.
                 
74.
            <td width="117" height="25" class="menuelinks"><a class="menue_link" href="index.php?language=<?php echo $language; ?>"><?php if ($language == 'de') echo Startseite; if ($language == 'en') echo Home; if ($language == 'fr') echo Maison ?></a></td> 
75.
              </tr> 
76.
              <tr> 
77.
                 
78.
            <td height="25" class="menuelinks"><a class="menue_link" href="produkte.php?language=<?php echo $language; ?>"><?php if ($language == 'de') echo Produkte; if ($language == 'en') echo Products; if ($language == 'fr') echo Produits ?></a></td> 
79.
              </tr> 
80.
              <tr> 
81.
                 
82.
            <td height="25" class="menuelinks"><a class="menue_link" href="kontakt.php?language=<?php echo $language; ?>"><?php if ($language == 'de') echo Kontakt; if ($language == 'en') echo Contact; if ($language == 'fr') echo Contact ?></a></td> 
83.
              </tr> 
84.
              <tr> 
85.
                 
86.
            <td height="25" class="menuelinks"><a class="menue_link" href="impressum.php?language=<?php echo $language; ?>"><?php if ($language == 'de') echo Impressum; if ($language == 'en') echo Impressum; if ($language == 'fr') echo Impressum ?></a></td> 
87.
              </tr> 
88.
              <tr> 
89.
                 
90.
            <td height="25" class="menuelinks">&nbsp;</td> 
91.
              </tr> 
92.
            </table> 
93.
             
94.
			 
95.
            </td> 
96.
          <td valign="top" width="500" class="title" align="left"
97.
		  
das ist in der oben.php
Bitte warten ..
Mitglied: SlainteMhath
24.09.2014, aktualisiert um 10:05 Uhr
Hui, der Code ist ja wild :P

Zeile 2 bis 29 lassen sich ersetzen durch:
01.
if (empty($language))  {  
02.
	$availablelanguages = array("de","en","fr"); 
03.
	$defaultlanguage = "en";  
04.
 
05.
	function sprachermittlung($default, $available) {  
06.
		$sprache = substr(getenv("HTTP_ACCEPT_LANGUAGE"),0,2);  
07.
		 
08.
		if(in_array($sprache, $available)) { 
09.
			return $sprache; 
10.
		} else { 
11.
			return $default;  
12.
		}  
13.
14.
$language = sprachermittlung($defaultlanguage, $availablelanguages);  
15.
} 
Ungeklärt ist immer noch wo $language initial gefüllt wird (oder warum fragst du mit "if empty..." ab?)

/EDIT: Bugfix
Bitte warten ..
Mitglied: Phibbo
24.09.2014 um 10:29 Uhr
Ich habe diesen code nicht geschrieben. ich habe die seite nur übernommen.
Bitte warten ..
Mitglied: Phibbo
24.09.2014 um 10:48 Uhr
Wo könnte ich denn diese anweisung finden??
Gibt es eine Lösung mein problem in der oben php schnell zu lösen?
Bitte warten ..
Mitglied: flow.ryan
LÖSUNG 24.09.2014, aktualisiert um 11:08 Uhr
Hallo,

ich habe mir deine Seite einmal eben angeschaut. Die Variable $language wird an als Query-String (sprich per GET) an die URL angehängt:
--> index.php?language=de

setze doch einmal
01.
$language = $_GET['language']; 
in deinen Code ein.
Bitte vor dem
01.
if (empty($language))  { 
Geht es dann?

LG,
Florian
Bitte warten ..
Mitglied: SlainteMhath
24.09.2014 um 10:59 Uhr
Wo könnte ich denn diese anweisung finden??
In dem du in allen beteiligten PHP Files nach "$language" suchst.

Was genau bedeutet denn eigentlich "Jetzt geht die umstellung der Sprachen nicht mehr."? Wird gar nichts mehr angezeigt, oder immer nur die default Sprache? Oder gibt's Fehlermeldungen? Werden der Seite beim Aufruf Get/Post Parameter mit übergeben?
Bitte warten ..
Mitglied: drobskind
24.09.2014 um 11:08 Uhr
Noch ein kleiner Hinweis, der jetzt nichts mit der Lösungsfindung zu tun hat...

"Deutschland einziger Hersteller" ist grammatikalisch nicht wirklich korrekt

Gruß
drobskind
Bitte warten ..
Mitglied: Phibbo
24.09.2014 um 11:09 Uhr
Juhu jetzt geht es wieder.
Es wurde immer nur deutsch angezeigt.
Danke flow.ryan das war die Lösung.
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Batch & Shell
gelöst Xcopy leeren Folder1 nach Folder2 geht nicht (9)

Frage von Yauhun zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch mit Copy auf SBS2008 funktioniert nicht, auf Client geht es (9)

Frage von CyCOtt zum Thema Batch & Shell ...

Windows Server
gelöst SMB 3.x, Multichannel mit mehreren Netzwerkkarten - Verständnisfrage (3)

Frage von mcGeorge zum Thema Windows Server ...

Heiß diskutierte Inhalte
Linux Netzwerk
gelöst DHCP vergibt keine Adressen (31)

Frage von Maik82 zum Thema Linux Netzwerk ...

Exchange Server
gelöst Bestehende eMails autoamatisch weiterleiten (22)

Frage von metal-shot zum Thema Exchange Server ...

Apache Server
gelöst Lets Encrypt SSL mit Apache2 (20)

Frage von banane31 zum Thema Apache Server ...

Switche und Hubs
LAG zwischen SG300-Switches macht Probleme. Wer weiß Rat? (20)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...