UI-Dialog bei PHP Login Problem (IE)

UnoDosTres

Erfahrenes Mitglied
Hallo zusammen,

seit kurzem versuche ich ein kleines Projekt zu lernzwecken auf JQuery-Basis zu erstellen.
Erstmal wollte ich das Backend entwicklen. Dazu habe ich eine Seite mit einem Formular das für das Login verantwortlich ist. Soweit funktioniert auch alles. Unter Mozilla auch so wie es soll: Wenn der User ein falsches Passowort angegeben hat dann erscheint ein UI-Dialog mit der endsprechenden Meldung.
Unter dem IE wird das jQuery aber nach einer Falscheingabe "zerissen".

So wird es korrekt im Mozilla angezeigt
jq_errMOZ.png

Und so im IE:
jq_errIE.png

Bei ersten starten im IE (bevor man eine Falscheingabe macht) wird es im IE auch noch richtig angezeigt. Also als abgerundete Buttons etc.

Könnte es evtl. damit zusammenhängen das das PHP Script die Anzeige auslöst bevor der Header gesendet wird? Und wenn ja, wie umgehe ich das? Hier mal das komplette Script zur Veranschaulischung:

Code:
?php
     if ($_SERVER['REQUEST_METHOD'] == 'POST') {
      session_start();
	  
	  include("config.php");
	  $username = $_POST['username'];
      $passwort = $_POST['passwort'];
      $hostname = $_SERVER['HTTP_HOST'];
      $path = dirname($_SERVER['PHP_SELF']);
       
	  
	  
      // Benutzername und Passwort werden überprüft
      if ($username == $admin_user && $passwort == $admin_password) {
       $_SESSION['angemeldet'] = true;

       // Weiterleitung zur geschützten Startseite
       if ($_SERVER['SERVER_PROTOCOL'] == 'HTTP/1.1') {
        if (php_sapi_name() == 'cgi') {
         header('Status: 303 See Other');
         }
        else {
         header('HTTP/1.1 303 See Other');
         }
        }

       header('Location: http://'.$hostname.($path == '/' ? '' : $path).'/panel.php');
       exit;
       }
	   else {
		echo '<div id="dialog-message" title="Fehlerhafte Eingabe">Die von Ihnen eingegebenen Zugangsdaten sind ungültig!</div>';
	    }
      }
?>




<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Adminpanel</title>
<link href="../layout.css" rel="stylesheet" type="text/css" />
<link type="text/css" href="../css/custom-theme/jquery-ui-1.8.17.custom.css" rel="stylesheet" />
<script type="text/javascript" src="../js/jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="../js/jquery-ui-1.8.17.custom.min.js"></script>

<script>
	$(function() {
		
		$( "input:submit, a, button", ".tools" ).button();
		$( "a", ".demo" ).click(function() { return false; });
	});

</script>

<script>
$(function() {
		// a workaround for a flaw in the demo system (http://dev.jqueryui.com/ticket/4375), ignore!
		$( "#dialog:ui-dialog" ).dialog( "destroy" );
	
		$( "#dialog-message" ).dialog({
			modal: true,
			draggable: false,
			resizable: false,
			position: 'top',
			buttons: {
				Ok: function() {
					$( this*).dialog( "close" );
				}
			}
		});
	});

</script>

</head>

<body>
<div id="admin_header"><div style="padding:12px;"><span class="Font2">Admin-Login</span></div></div>
<div id="admin_mainbody">
    <div style="padding-left: 20px; padding-right:20px; padding-top: 8px;">
	
    
    <div class="ui-widget">
			<div class="ui-state-highlight ui-corner-all" style="padding: 3px;"> 
				<p><span class="ui-icon ui-icon-info" style="float: left; margin-right: .3em;"></span>
				Änderungen nur durch authorisierte Personen! </p>
			</div>
		</div>
	<p>
   	  <form action="index.php" method="post">
   		<p class="Font1">Benutzername:<br />
    		<input name="username" type="text" class="text ui-widget-content ui-corner-all" maxlength="40"/></p>
    
   		<p class="Font1">Passwort:<br />
   		  <input name="passwort" type="password" class="text ui-widget-content ui-corner-all" maxlength="40"/></p>
            
          <div class="tools"><input type="submit" name="Login" value="Login" /></div>
    	</form>
    </p>
	</div>

</div>
<div id="admin_footer"></div>
</body>
</html>
 
Zurück