Der Martin: Problem mit Auswertung von $_POST

Beitrag lesen

Hi,

ich bin gerade dabei, den Administrationsbereich unserer Bandhomepage zu erstellen.
Zunächst wird geprüft, ob bereits ein Fingerabdruck vom Client erstellt wurde. Wenn nicht, dann wir er erstellt und die Seite aus der Datei "Fingerprint.js" heraus neu aufgerufen.

dann ist die Javascript-Funktion get_fingerprint() offensichtlich von zentraler Bedeutung für das Funktionieren dieses Konzepts. Ausgerechnet die zeigst du uns aber nicht.

Es wird nach dem Absenden des Anmeldeformulars immer wieder nur das Anmeldeformular angezeigt, der $_POST["Aktion"]-Variable scheint keinerlei Beachtung geschenkt zu werden.

Nicht mutmaßen. Prüfen!
Die erste Verzweigung ...

if (!isset ($_POST["Fingerprint"]))

... scheint also zu tun, was du erwartest. Also wird im zweiten Schritt wie gewünscht das Formular angezeigt, da $_POST["Aktion"] nicht da ist.

<?php

if (!isset ($_POST["Aktion"]))

{


> ?>  
> ~~~html

                  <style>...</style>  

>                </head>  
>                <body>  
>                   Bitte melde Dich an, um Zugang zum Verwaltungsbereich zu bekommen:  
>                   <form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post">  
>                      Benutzerkennung: <input name="Benutzer" type="text" value="">  
>                      Allgemeines Passwort: <input name="Allgemein" type="text" value="">  
>                      Persönliches Passwort: <input name="Persoenlich" type="text" value="">  
>                      <input type="submit" value="Anmelden">  
>                      <input name="Aktion" type="text" value="Anmelden">  
>                   </form>  
>                </body>  
>             </html>

Und nach dem Absenden des Formulars geht das Spiel von vorne los, weil bei diesem Request kein $_POST["Fingerprint"] mehr dabei ist. Eigentlich klar, oder?
Übrigens würde ich Eingabefelder für Kennwörter auch als type="password" auszeichnen, dann wird die Eingabe mit Sternchen verschleiert (oder was sonst im jeweiligen GUI üblich ist).

$Aktion = $_POST["Aktion"];

Was hat das Umkopieren hier für einen Zweck? Es ist zwar nicht direkt falsch oder schädlich, aber sinnlos. Weg damit. Warum fragst du $_POST["Aktion"] nicht direkt in der switch-Anweisung ab?

Ciao,
 Martin

--
Disziplin: Teppichböden wiederfinden, wenn man sie verlegt hat.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(