Mein Tool im IE will nicht

Moin!

Habe mal ein Problem…
Und zwar, dass ich mit FireFox in mein CMS komme, doch im IE nicht.
Nämlich:
Im IE kommt die Passwortaufforderung.
Ich gebe das Passwort ein, das stimmt. Doch es kommt immer die Errormeldung, die Sagt, dass mein Passwort falsch ist.
Benötigte Dateien für das Login:
->index.php (Loginseite)
->login.php Prüft passwort und leitet auf admin.php weiter
->admin.php prüft ob Session gültig ist. Wenn ja, dann Inhalt zeigen.
Habe jeweils die Codes aufgelistet:

index.php:
[php]

<?php if(file_exists('install.php')) // Wenn install.php existiert, { if(!file_exists('config.php')) // dann prüfen, ob config.php nicht existiert. Wenn nicht, dann { echo'

Installation

'; // Installationspfad angeben. } else // Wenn config.php doch existiert, { echo'Bitte löschen Sie install.php und das Verzeichnis install/'; } } else { echo''; echo''; echo'Login'; echo''; echo''; echo''; echo'

Administration
'; echo''; echo'

'; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo'
Passwort:'; echo'
'; echo'
'; echo'
'; echo'

'; echo''; echo''; echo''; echo''; echo'
Admintool © by Matija Baskarad
'; echo''; echo''; } ?>

[/php]Also es prüft hier, ob install.php gelöscht ist. Wenn ja dann Loginfeld zeigen. Wenn nein, dann Meldung geben,. Wenn install.php existiert, aber config.php nicht, dann kommt die Installation.

Hier stimmt es bis jetzt.
Nun die login.php:
[php]

<?php include("config.php"); $Zugangspasswort = "$passwort"; if($_REQUEST['Send'] && $_REQUEST['Passwort'] == $Zugangspasswort) { session_start(); session_register("Passwort"); $_SESSION['Passwort'] = $Zugangspasswort; } ?> Administration <?php if($_SESSION['Passwort'] == $Zugangspasswort) { echo"Sie sind erfolgreich eingeloggt!
Sie werden zur Administration weitergeleitet."; } else { echo 'Sie sind nicht befugt, diese Seite anzusehen
Möglicherweise ist das eingegeben Passwort falsch.

'; echo 'Bitte loggen Sie sich hier erneut ein.'; } ?> [/php]Also hier prüft es das Passwort. Wenn es stimmt, dann ist das Passwort zugleich die Session. Das Passwort steht in config.php.. Keine Angst, niemand sieht es auf dem Web. Denn es ist so gemacht: [php] <?php $passwort = "passwort"; ?>[/php]Nun die admin.php

[php]

<?php session_start(); ?> Administration body { font-family: Verdana,Arial; font-size: 10pt; color: #000000; background-color: #ffffff; }

table, tr, td {
font-family: Verdana,Arial;
font-size: 10pt;
color: #000000;
}

<?php include("config.php"); $Zugangspasswort = $passwort; if($_SESSION['Passwort'] == $Zugangspasswort) { echo'
'; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo'
'; echo'
'; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo'
'; echo'
'; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo'
 '; if(!isset($_GET['navig'])) { $_GET['navig'] = 'main'; } switch($_GET['navig']) { default: include("_private/navig_main.php"); break; case 'main' : include("_private/navig_main.php"); break; } echo' 
'; echo'
'; echo'
'; echo'
 '; echo''; echo''; echo''; echo''; echo''; echo'
'; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo'
'; echo'
'; echo''; echo''; echo''; echo''; echo''; echo''; echo''; echo'
 '; $site = $_GET['site']; if(!isset($site)) { $_GET['site'] = 'main'; } switch($site) { default: include("_private/main.php"); break; case 'main' : include("_private/main.php"); break; case 'content_bearbeiten' : include("content/content_bearbeiten.php"); break; case 'content_insert' : include("content/content_insert.php"); break; case 'logout' : include("_private/logout.php"); break; case 'einstellungen' : include("einstellungen/einstellungen.php"); break; case 'save' : include("einstellungen/save.php"); break; case 'write' : include("einstellungen/write.php"); break; case 'auswaehlen' : include("einstellungen/auswaehlen.php"); break; } echo' 
'; echo'
'; echo'
'; echo'
'; echo'
'; echo'

Admintool © by Matija Baskarad

'; echo'
'; } else { echo 'Ihre Session ist nicht gültig!
'; echo 'Bitte loggen Sie sich hier ein.'; } ?> [/php]Also wenn die Session Passwort gleich wie $Zugangspasswort ist, dann kommt der Inhalt. Wenn nicht, dann kommt die Meldung, die ich im IE immer sehe. Das Passwort ist falsch.

Zum Testen:
http://freerunning.pytalhost.net/admin/index.php

Passwort ist „michel“

Im Firefox ist alles okay, aber im IE kommt die Meldung, session ist ungültig.

Weiss jemand wieso?

Das Problem ist sehrwarscheinlich bei login.php
Aber ich komme nicht drauf.

MfG, matibaski

Das Send-Feld (Submit) wird beim IE nicht mit übergeben. Daher erkennt dein login.php korrekt, dass sich der nutzer nicht anmeldet.

Gruß,
Jumper, hte II.

[php]
if($_REQUEST[‚Send‘] && $_REQUEST[‚Passwort‘] == $Zugangspasswort)[/php]
hier wird es ja übernommen.

Hier in index.php:
[html]

[/html]

Also kann es nicht an dem liegen.
Oder meinst du woanders?

MfG, matibaski

Öhm nö, bei mir übergibt der IE den Namen des Submit Buttons.
On-Topic:
Der Fall ist perfekt zum selbst debuggen mit echo statements geeignet…
Pack doch einfach mal hinter jede Zuweisung eine Ausgabe und guck dir
im IE an, was davon ausgeführt wird und was nicht(bzw was falsch ausgeführt
wird)

Woran es liegen könnte weiss ich auch nicht direkt. Auf jedenfall würde ich
session_register mal rausnehmen… ist eine PHP Variable deaktiviert, klappt
das nicht mehr… safety first.
Generell würde ich den Block so schreiben(auch wenns daran wohl nicht liegt) :wink:

[php]
if(isset($_POST[‚Send‘]) and ($_POST[‚Passwort‘] == $Zugangspasswort))
{
session_start();
$_SESSION[‚Passwort‘] = $Zugangspasswort;
}
[/php]

PS: Hattest nen Fehler bei den Klammern.
Hab’s nun so:
[php]

<?php include("config.php"); $Zugangspasswort = "$passwort"; if(isset($_POST['Send']) and ($_POST['Passwort'] == $Zugangspasswort)) { session_start(); $_SESSION['Passwort'] = $Zugangspasswort; } ?> <?php if($_SESSION['Passwort'] == $Zugangspasswort) { echo"Sie sind erfolgreich eingeloggt!
Sie werden zur Administration weitergeleitet."; } else { echo 'Sie sind nicht befugt, diese Seite anzusehen
Möglicherweise ist das eingegeben Passwort falsch.

'; echo 'Bitte loggen Sie sich hier erneut ein.'; } ?>[/php]

Will trotzdem nicht.
Es erscheint immernoch die else {} Meldung.

Bin am verzweifeln. :frowning:

ich zitiere mich mal…

Der Fall ist perfekt zum selbst debuggen mit echo statements geeignet…
Pack doch einfach mal hinter jede Zuweisung eine Ausgabe und guck dir
im IE an, was davon ausgeführt wird und was nicht(bzw was falsch ausgeführt
wird)

was passiert? was wird noch ausgegeben und was nicht mehr?
p.s. klammer fehler im post darüber bereinigt

Es erscheint dies hier:
[php]
else
{
echo ‚Sie sind nicht befugt, diese Seite anzusehen
Möglicherweise ist das eingegeben Passwort falsch.

‘;
echo ‚Bitte loggen Sie sich hier erneut ein.‘;
}[/php]

Im Explorer:
Sie sind nicht befugt, diese Seite anzusehen
Möglicherweise ist das eingegebene Passwort falsch.

Bitte loggen Sie sich hier erneut ein.

Vielleicht erlaubt dein IE keine Session-Cookies…

Kann nicht sein.
Habe bei Inhaltsschutz die Stufe auf 0 gesetzt.
Es stand:
Alle Cookies werden von jeder Seite zugelassen. Oder irgendwie so…

Abgesehen davon, auf fünf weiteren PC’s ging es auch nicht. Nur mit FireFox.

Also ich habe mal die login.php wie folgt geändert:
[PHP]<?php include("config.php"); var_dump( $_REQUEST); // DEBUGGING!!!!!! $Zugangspasswort = "$passwort"; if($_REQUEST['Send'] && $_REQUEST['Passwort'] == $Zugangspasswort) { session_start(); session_register("Passwort"); $_SESSION['Passwort'] = $Zugangspasswort; } ?>

Administration <?php if($_SESSION['Passwort'] == $Zugangspasswort) { echo"Sie sind erfolgreich eingeloggt!
Sie werden zur Administration weitergeleitet."; } else { echo 'Sie sind nicht befugt, diese Seite anzusehen
Möglicherweise ist das eingegeben Passwort falsch.

'; echo 'Bitte loggen Sie sich hier erneut ein.'; } ?> [/PHP]

und siehe da, beim Passwort test gibt es das Ergebnis:

[CODE]array(2) { [„Passwort“]=> string(4) „test“ [„PHPSESSID“]=> string(32) „2bed17ef14ae1d301da1eb08e1ef568e“ } Sie sind nicht befugt, diese Seite anzusehen
Möglicherweise ist das eingegeben Passwort falsch.

Bitte loggen Sie sich hier erneut ein. [/CODE]

Das ganze mit dem IE7 … Und jetzt büdde noch mal das ganze …

Gruß,
Jumper, the II.

Danke. Nun funktioniert es auch im IE.
Wieso
[php]
var_dump( $_REQUEST);
[/php]??
Ich habe diese Funktion noch nie benutzt (var_dump)
Für was ist diese?

MfG, matibaski

var_dump gibt den Inhalt einer Variable aus.

[phpnet]var_dump[/phpnet]

Will nicht spamen, aber Danke mussman ja sagen.

DANKE!

MfG, matibaski