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, 995 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
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (19)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...