PHP Problem im Internet Explorer mit Login/Reg-Formularen, weiß nicht mehr weiter...

sewo

Grünschnabel
Hi Leute,
habe vor kurzem angefangen PHP zu lernen und wollte mir ein Login-Formular erstellen, doch nun stehe ich vor einem Problem. Dieses funktioniert nicht im IE.

bin eben durch Google hierher gelangt und hoffe, dass mir vielleicht einer von euch sagen kann, was ich denn im folgenden Skript falsch gemacht habe, denn Firefox, Safari und Opera haben damit keine Probleme und es funktioniert alles so wie ich wollte. Aber sobald ich in den InternetExplorer gehe funktioniert gar nichts mehr.

Ich hab irgenwie keinen Plan worans liegen kann, wäre echt nett wenn mir jemand hilft,
Im IE erfolgt einfach keine Ausgabe per PHP, hier jetzt mal die Dateien.
Das Formular wird zwar angezeigt, aber...
Also die ganzen Fehlermeldungen mit echo kommen nicht und das Formular funktioniert auch nicht.
Ich kann mich weder anmelden noch registrieren.

Die mit dem Formular: form_start.php
HTML:
<html>
<head>	<link href="style/<? echo U_style?>/css/general.css" type="text/css" rel="stylesheet">
</head>
<body>
	
	<form action="<?= $_REQUEST["PHP_SELF"];?>" method="post">
	<table id="login" border="1">
		<tr>
			<td colspan=2>
			<? get_startform();//Formulareingaben Handling wenn schon mal da gewesen ?>
			</td>
		</tr>
		<tr>
			<td colspan="2"><span class="info"><? echo $L_login_info ?></span></td>
			
		</tr>
		<tr>
			<td><? echo $L_playername ?></td>
			<td><input name="form_nick" type="text" tabindex="1" size="30"></td>
		</tr>
		
		<tr>
			<td><? echo $L_email ?></td>
			<td><input name="form_email" type="text" tabindex="2" size="30"></td>
		</tr>
		
		<tr>
			<td><? echo $L_password ?></td>
			<td><input name="form_pw" type="password"  tabindex="3" size="30"></td>
		</tr>
		
		<tr  valign="middle">
			<td>
				<input name="hidden" type="hidden" value="done" >
				
				<button type="submit" name="form_action" value="register" tabindex ="5"><? echo $L_register ?></button>
				<input type="checkbox" name="form_check" value="accept"><span class="info">AGB</span>
			</td>
			<td align="center"  valign="middle">
				<input type="hidden" name="hidden" value="<? $session_id  ?>">
				<button type="submit" name="form_action" value="login" tabindex ="4"><? echo $L_login ?></button>
				<button type="reset" value="reset" tabindex ="6"><? echo $L_clear ?></button>
				
			</td>
		</tr>
		

		
	</table>
	</form>
	
</body>
</html>

Diese Datei führe ich am Ende aus: start.php

Code:
<?php
session_start();					//Starten einer neuen Session



//Funktionen & Variablen
include 'include/functions.php';

include 'include/constants.php';

//Sprachvariablen
include 'language/'.U_language;

//Style-Files
include 'style/'.U_style.'/form_start.php';



?>

Und das ist die get_startform Funktion die in der Datei functions.php steht:

Code:
/**
 * 	Handling bei Formulareingabe beim Login und Registrieren	
**/
function get_startform ()	//Wenn von dieser Seite kommend
	{	//db_connect(); user_not_exists();
		
		
		//macht Problem im Internet Explorer
		if ($_REQUEST["hidden"]==$session_id && isset ($_REQUEST["hidden"]))
		//if ($_REQUEST["form_action"]=="register")
		{
			//Deklarieren der leeren Errormessage
			$error="";
			
			switch ($_REQUEST['form_action'])
			{
			//Abfrage ob Pflichtfelder zum Registrieren leer sind
			case 'register':
				
				if($_REQUEST["form_check"]==true)//Wenn AGB akzeptiert, dann überprüfe Eingaben
				{	
					if ($_REQUEST["form_nick"]=="")
					{
						$error.= "<span class=\"error\">!error = Nickname empty !</span><br>";
					}
					if ($_REQUEST["form_email"]=="")
					{
						$error.= "<span class=\"error\">!error = E-mail empty !</span><br>";
					}
					if ($_REQUEST["form_pw"]=="")
					{
						$error.= "<span class=\"error\">!error = Password empty !</span><br>";
					}
							
					//Wenn Pflichtfelder nicht ausgefüllt, Errormeldung
					if ($error != "")
					{
						echo  $error;
					}
					
					//Wenn alle Pflichtfelder ausgefüllt, dann verbinde mit Datenbank und registriere neuen User, wenn nicht vorhanden
					if ($error == "")
						{	
							register_user ();	
						}
				}
				else echo ("<span class=\"error\">Read and accept AGB!</span>");
				break;//end case:register
				
			//Abfrage ob Pflichtfelder zum Einloggen leer sind	
			case 'login':
				
				if ($_REQUEST["form_nick"]=="" && $_REQUEST["form_email"]=="")
				{
					$error.= "<span class=\"error\">!error = Enter E-Mail or nickname !</span><br>";
				}

				if ($_REQUEST["form_pw"]=="")
				{
					$error.= "<span class=\"error\">!error = Enter password !</span><br>";
				}
				//Wenn Pflichtfelder nich ausgefüllt, Errormeldung ausgeben
				if ($error != "")
				{
					echo $error;
				}
				
				//Wenn alle Pflichtfelder ausgefüllt, dann verbinde mit Datenbank und üperprüfe Login-Daten auf Richtigkeit
				if ($error == "")
				{
					login();
					



				};break;//end case:login
			}//end switch
				
		}//end Parent-If
		else echo "Welcome";
	}//end Function	*/

So, ich denke das sollte reichen, wenn ich noch was vergessen haben sollte, sagts mir und ich reichs noch nach :)
Ich denke mir mal das diese Funktion die Probleme macht

grüße
 
Zuletzt bearbeitet:
Kann es eigentlich irgendwie schadhaft sein,wenn mir für meine Ordnernamen Variablen anlege, um diese dann bei denn includes zu verwenden?

gruß
 
Hat denn keiner eine Idee warum im Internet Explorer keine Ausgabe erfolgt oder wenigstens eine Vermutung So ein kleiner Hinweis würde mir schon helfen...
gruß
 
Hallo,
sei doch mal bitte so nett und Poste uns dein verwendetes Style sheet und den Quellcode den dir der IE dann ausgibt.
Danke XerY
 
Also, Ich glaub ehrlich gesagt nicht, dass es am Stylesheet liegt. Ich hab mittlerweile alles nochmal überarbeitet und ein neues Login-system geschrieben, was im Prinzip zwar das gleiche tut, aber ein bisschen anders geschrieben. Und das gleiche Problem tritt immer noch auf. Ich hab meinem Funktionen jetzt z.B nur ein paar Übergabeparameter hinzugefügt und die Request durch post ersetzt und die in variablen, aber ansonsten ist es noch das elbe prinzip.Ich denk mal nicht das ich das jetzt auch noch posten soll, wenns wichtig is sags mir.
Im neuen Stylesheet steht übrigens außer das hier nichts und das kann dafür ja eigentlich nicht verantwortlich sein:

HTML:
@CHARSET "ISO-8859-1";


/**Allgemeine Schriftformatierung*/
body	{	font-family: Verdana, Arial, sans serif; 
			text-align:center;
			
		}		
		
		
.info, .info a	{	font-size: 8px;
					color:black;
					text-decoration: none;
				}
				
.error	{	color:red
		}
 .ok	{	color:green
		}

Und das ist der Quellcode aus dem IE:(außer das noch öfter BANNER da stand)
HTML:
<html>
<head>
</head>
<body>

<span> 
NER BANNER BANNER BANNER 
BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER 
BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER 
</span>

</body>
</html>
<html>
<head>
<link href="style/standard/css/general.css" type="text/css" rel="stylesheet">
<link href="style/standard/css/overalls.css" type="text/css" rel="stylesheet">



</head>
<body>
	
	<form action="" method="post">
	<table id="log_table" align="center" border="1">
	
		<tr>
			<td colspan="2"><span class="info"></span></td>
			
		</tr>
		<tr>
			<td>Nickname</td>
			<td><input name="form_nick" type="text" tabindex="1" size="30"></td>
		</tr>
		
		<tr>
			<td>E-mail</td>
			<td><input name="form_email" type="text" tabindex="2" size="30"></td>
		</tr>
		
		<tr>
			<td>Passwort</td>
			<td><input name="form_pw" type="password"  tabindex="3" size="30"></td>
		</tr>
		
		<tr  valign="middle">
			<td>
			
				<input name="hidden" type="hidden" value="done" >
				
				<button type="submit" 	name="form_action" 	value="register" 	tabindex ="6" title="Neuen Account registrieren">
				Registrieren</button>
				
				<input type="checkbox" 	name="form_check" 	value="accept" tabindex="5" title="AGB akzeptieren" style="margin-bottom:0;margin-right:0;">
				<span class="info"><a href="#" title="AGB lesen">
				AGB</a></span>
				
			</td>
			<td align="center"  valign="middle">
				
				<input type="hidden" 	name="hidden" 		value="">
				
				<button type="submit" 	name="form_action" 	value="login" 		tabindex ="4" title="Ins Spiel einloggen">
				Login</button>
				
				<button type="reset" value="reset" 								tabindex ="7" title="Formular leeren...">
				reset</button>
				
			</td>
		</tr>
		

		
	</table>
	</form>
	
</body>
</html><html>
<head>
</head>
<body>
<span style="word-spacing:33px;">
<a href="#" title="" style="word-spacing: 0;">About the Game</a>
<a href="#" title="">Spielregeln</a>
<a href="#" title="">Forum</a>

<a href="#" title="">Impressum</a>
<a href="#" title="">Haftungsauschluss</a>
</span>

</body>
</html>


<html>
<head>

</head>
<body>
</body>
</html>

Und hier noch zum Vergleich aus dem Firefox, ich seh da aber keine Unterschied...

HTML:
<html>
<head>
</head>
<body>

<span> 
BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER 
BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER 
BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER 
BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER 
BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER 
BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER 
</span>

</body>
</html>
<html>
<head>
<link href="style/standard/css/general.css" type="text/css" rel="stylesheet">
<link href="style/standard/css/overalls.css" type="text/css" rel="stylesheet">


</head>
<body>
	
	<form action="" method="post">
	<table id="log_table" align="center" border="1">
	
		<tr>
			<td colspan="2"><span class="info"></span></td>
			
		</tr>
		<tr>
			<td>Nickname</td>

			<td><input name="form_nick" type="text" tabindex="1" size="30"></td>
		</tr>
		
		<tr>
			<td>E-mail</td>
			<td><input name="form_email" type="text" tabindex="2" size="30"></td>
		</tr>
		
		<tr>
			<td>Passwort</td>

			<td><input name="form_pw" type="password"  tabindex="3" size="30"></td>
		</tr>
		
		<tr  valign="middle">
			<td>
			
				<input name="hidden" type="hidden" value="done" >
				
				<button type="submit" 	name="form_action" 	value="register" 	tabindex ="6" title="Neuen Account registrieren">
				Registrieren</button>
				
				<input type="checkbox" 	name="form_check" 	value="accept" tabindex="5" title="AGB akzeptieren" style="margin-bottom:0;margin-right:0;">

				<span class="info"><a href="#" title="AGB lesen">
				AGB</a></span>
				
			</td>
			<td align="center"  valign="middle">
				
				<input type="hidden" 	name="hidden" 		value="">
				
				<button type="submit" 	name="form_action" 	value="login" 		tabindex ="4" title="Ins Spiel einloggen">
				Login</button>
				
				<button type="reset" value="reset" 								tabindex ="7" title="Formular leeren...">

				reset</button>
				
			</td>
		</tr>
		

		
	</table>
	</form>
	
</body>
</html><html>
<head>
</head>
<body>

<span style="word-spacing:33px;">
<a href="#" title="" style="word-spacing: 0;">About the Game</a>
<a href="#" title="">Spielregeln</a>
<a href="#" title="">Forum</a>

<a href="#" title="">Impressum</a>
<a href="#" title="">Haftungsauschluss</a>
</span>

</body>
</html>

<html>
<head>

</head>
<body>
</body>
</html>

Wenn ich im Firefox ne Fehlermeldung habe also vom Loginformular steht diese Zeile als erste noch vor dem head da:
<span class="error">!error = Enter E-Mail or nickname !</span><br><span class="error">!error = Enter password !</span><br><html>
Liegt das daran, dass die Zeile noch vorm Head steht, kommt der IE damit nicht klar?

gruß & danke das sich jetzt doch einer gemeldet hat
 
Zuletzt bearbeitet:
Danke, aber hilft auch nicht, aber die Seite ruft sich glaub ich selber auf, aber dann geschieht nichts.
Für ein paar Sekunden erscheint mal ein Ladebalken mit der Seite wenn ich auf die Buttons klicke
Der Login ist auch nicht erfolgreich mit richtigen Daten.
 
Was mir sonst noch so nebenbei einfällt ist:
<button....
ich verwende immer
<input type="submit" name=".." value="..." />

Keine Ahnung vielleicht liegt es ja dadran...
 

Neue Beiträge

Zurück