PHP Problem bei Switch,Schleife

Status
Für weitere Antworten geschlossen.

breksn

Newbie
Registriert
Sep. 2010
Beiträge
6
Huhu bräuchte mal eure Hilfe, steh grad voll an!

PHP:
<style type="text/css">
.stil
{
font-size: 23px;
color: #000099;
font-weight: bold;
}
</style>

<html><span class="stil">Drei Passwörter abfragen</span>
</html>

<form action="" method="get">
<input type="text" name="txttesteingabe">
<br/><input type="submit" value="login" name="btnlogin">
</form>

<?php

$var=1 ;
switch($var)

{
case 1: echo "Bereich für Passwort 1
Willkommen im Bereich für die Besitzer des 1.Passworts.";
break;

case 2: echo "Bereich für Passwort 2
Willkommen im Bereich für die Besitzer des 2.Passworts.";
break;

default: echo "Leider ist das Passwort nicht richtig";

}
?>

Wo ist da der Fehler drinnen?

Grüße
 
Naja, an dem Code ist quasi alles falsch ;)

Du definierst deine CSS-Formatierungen und das Formular außerhalb von <html></html>. Ersteres gehört in ein separates Stylesheet oder in den <head>-Bereich. Letzteres gehört in den <body>. Des Weiteren vermischst du HTML und XHTML-Notation und du hast keine Dokumenttyp-Deklaration.

Im PHP-Teil weist du der Variablen $var den festen Wert 1 zu - völlig unabhängig davon, was der Benutzer im Formular eingeben würde, $var ist immer 1. Ganz davon abgesehen, dass dein Script gar keine Formularfelder abfragt und diese Angaben somit im Nirvana landen.


Für micht sieht das zumindest so aus, als ob du wenig bis keine Ahnung von HTML, CSS und PHP hast, und hier mehr oder weniger blind etwas zusammengeschrieben/-kopiert hast, korrekt? :)


Da müste man eigentlich ganz vorne bei den Grundlagen anfangen mit Fehlerbehebung.
 
Zuletzt bearbeitet:
Hi breksn,

ich weiß gar nicht, wo ich anfangen soll :)

Was soll denn in deinem Beispiel genau passieren? So, wie ich das sehe, legst du in deinem php-Part eine Variable $var mit dem Wert 1 fest und wendest dann ein switch drauf an. Aber die Variable ist und bleibt 1. Da wird nie was anderes rauskommen. Und das Formular macht ja quasi auch rein gar nichts...

Davon mal abgesehen, ist das gesamte HTML-Konstrukt nicht soo super.

Gruß,

Mathias
 
Is eine Übung für die Schule, mal ganz abgesehen von HTML und CSS, das ist eigtl. wayne, geht nur um php.
Was muss ich dann schreiben, damit nicht immer 1 rauskommt?
 
Du überträgst deine Formulardaten via GET, also kannst du darauf mit $_GET zugreifen.

Das, was in $_GET ankommt, speicherst du dann in deiner Variablen.

Näheres dazu findest du bspw. hier.
 
Zuletzt bearbeitet:
Du brauchst ein Formular, was Daten an deine Datei schickt, und dass Passwort dann gegen prüft.

Endweder mit _GET oder _POST fertig :)

Auswertung sollte ja nicht das Problem sein ala

PHP:
<?PHP

$var = $_GET or $_POST["pass"];
$pass1 = "bla";
$pass2 = "bla2"; 

//dann prüfen was zu trifft:

switch ($var) {
    case $pass1:
        echo "pass1";
        break;
    case $pass2:
        echo "pass2";
        break;
}
?>

jaja soll nur ein Beispiel sein :evillol:
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben