Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: If Problem.

  1. #1
    Samurai Avatar von #matthias
    Registriert seit
    24.02.2009
    Ort
    Sömmerda
    Beiträge
    200
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard If Problem.

    Hallo,

    ich habe da mal wieder ein Problem und das sieht so aus:

    PHP-Code:
        $user_passwort_1 $_POST["passwort_1"];
                
    $user_passwort_2 $_POST["passwort_2"];
                
    $vorname $_POST["vorname"];
                
    $nachname $_POST["nachname"];
                
    $email $_POST["emailadresse"];
                
                
    //strlen = gibt die anzahl der zeichen einer variablen aus
                //echo strlen($user_name);
                //echo $user_name." ".$user_passwort_1." ".$vorname." ".$nachname." ".$email;
                
                //test ob alle felder ausgefuehlt worden sind
                
    if ($user_name == "" || $user_passwort_1 == "" || $user_passwort_2 == "" || $vorname "" || $nachname == "" || $email == "")
                    {
                        echo 
    "<script language=\"javascript\" type=\"text/javascript\" 
                                    alert (\"Bitte fühlen Sie alle Felder aus!\")
                                    </script>"
    ;
                                    
                        
    //sind nicht alle felder ausgefuehlt geht es wieder auf die registrieren.html zurueck
                        
    refresh(0,"registrieren.html");
                        } 
    Die Felder des Formulars sollen dahin gehend getestet werden ob alle ausgefühlt sind, wenn dies nicht der Fall ist soll das Popup aufgehen und danach soll der User wieder auf die registrieren.html weiter geleitet werde.

    Wenn ich das Formular leer absende passiert garnicht, eigentlich sollte der Interpreter doch das im IF ausfüheren.
    Geteste habe ich schon ob die Variablen überhaupt einen Wert haben wen ich etwas reinschreibe und wenn die Variablen leer sind ob sie dann nicht doch z.b. ein Leerzeichen enthalten.

    Keine Ahnung woran das jetzt liegt, ich sitze wahrscheinlich schon zulange vor der Kiste.
    Jetzt brauche ich einen Kaffee und eine Zigarette.
    Vielleicht kann mir jemand von euch weiter helfen?

    MFG Matthias.
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    der/die Göttliche Avatar von jojo87
    Registriert seit
    23.03.2007
    Ort
    Leipzig
    Alter
    30
    Beiträge
    3.131
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: If Problem.

    1. Ist allein dieser Codeschnipsel sehr unsauber, um nicht zu sagen schlecht, programmiert. Nutze bei den Variablenzuweisungen mindestens trim(), um zu vermeiden, dass Daten schon mit einem Leerzeichen als gültig gewertet werden. Besser noch du überprüfst mit empty() anstatt ="".

    2. Was ist refresh(); ?

    woraus folgt

    3. zeige am besten mal deinen ganzen Code

  3. #3
    Samurai
    Themenstarter
    Avatar von #matthias
    Registriert seit
    24.02.2009
    Ort
    Sömmerda
    Beiträge
    200
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: If Problem.

    zu 3: das ist der ganze Code, ich steht erst am anfang.

    zu 2:
    PHP-Code:
    function refresh($time,$link)
                    {
                         echo 
    "<META http-equiv='refresh' content='$time;URL=$link'>";
                        } 
    zu 1: kann ich bei empty() auch mehere Varablen angeben oder muss ich das für jede einzeln machen?

    Ist allein dieser Codeschnipsel sehr unsauber, um nicht zu sagen schlecht, programmiert.
    Zeig mir wie es besser geht. Ich lerne immer gerne was dazu.

    p.s: kann ich trim schon auf $_POST[] anwenden?
    MFG Matthias
    Geändert von #matthias (27.08.2009 um 16:39 Uhr)

  4. #4
    Samurai
    Themenstarter
    Avatar von #matthias
    Registriert seit
    24.02.2009
    Ort
    Sömmerda
    Beiträge
    200
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: If Problem.

    also zu trim, ja kann man auf $_POST[] anwenden.

  5. #5
    Samurai Avatar von Donkey
    Registriert seit
    12.08.2008
    Ort
    München
    Alter
    35
    Beiträge
    237
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: If Problem.

    Versuchs einfach mal so:

    PHP-Code:
    if (empty($user_name) || empty($user_passwort_1) || empty($user_passwort_2) || empty($vorname) || empty($nachname) || empty($email))
    {
        echo
    '<script language="javascript" type="text/javascript">
        alert ("Bitte fühlen Sie alle Felder aus!");
        </script>'
    ;
        
    header('Location: registrieren.html');

    Geändert von Donkey (27.08.2009 um 17:02 Uhr)

  6. #6
    König(in) Avatar von Grevas
    Registriert seit
    20.04.2009
    Ort
    In meiner Wohnung.
    Alter
    30
    Beiträge
    1.039
    Danke
    0
    Bekam 5 mal "Danke" in 5 Postings

    Standard AW: If Problem.

    und schreib noch "füllen" wie bei ausfüllen statt "fühlen" wie bei Gefühl^^

    Ich mach das immer mit if( isset($_POST[]) ), da ich öfters die variablen direkt auch noch weiterverarbeiten will und im else dann $missing .= "blabla fehlt<br />" . So hab ich später ne schöne liste mit sachen die man noch ausfüllen soll *g* (+ ich kann die farblich hervorheben)
    Geändert von Grevas (27.08.2009 um 17:25 Uhr)

  7. #7
    Samurai
    Themenstarter
    Avatar von #matthias
    Registriert seit
    24.02.2009
    Ort
    Sömmerda
    Beiträge
    200
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: If Problem.

    So, ich habe das Script jetzt mal etwas abgeändert.

    PHP-Code:
    $user_name trim($_POST["username"]);
                
    $user_passwort_1 trim($_POST["passwort_1"]);
                
    $user_passwort_2 trim($_POST["passwort_2"]);
                
    $vorname trim($_POST["vorname"]);
                
    $nachname trim($_POST["nachname"]);
                
    $email trim($_POST["emailadresse"]);
                
                
                
    //echo strlen($user_name);
                //echo $user_name." ".$user_passwort_1." ".$vorname." ".$nachname." ".$email;
                
                //test ob alle felder ausgefuehlt worden sind
                
                
    if (empty($user_name) || empty($user_passwort_1) || empty($user_passwort_2) || empty($vorname) || empty($nachname) || empty($email))
                    {
                        echo 
    "<script language=\"javascript\" type=\"text/javascript\" 
                                    alert (\"Bitte füllen Sie alle Felder aus!\")
                                    </script>"
    ;
                                    
                        
    //sind nicht alle felder ausgefuellt geht es wieder auf die registrieren.html zurueck
                        
    refresh(0,"registrieren.html");
                        } 
    Es klappt aber immer noch nicht, die Variablen sind leer, aber ich bekommen nicht die Meldung. Irgendwie komme ich nicht in den IF-Zweig.

  8. #8
    Samurai Avatar von Donkey
    Registriert seit
    12.08.2008
    Ort
    München
    Alter
    35
    Beiträge
    237
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: If Problem.

    Tja - saubere Programmierung is halt alles.

    Beim <script>-Tag fehlt das >

  9. #9
    Samurai
    Themenstarter
    Avatar von #matthias
    Registriert seit
    24.02.2009
    Ort
    Sömmerda
    Beiträge
    200
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: If Problem.

    @Donky,

    Danke, genau daran hat es gelegen!

    Wegen so ein sch.... > !
    Aber hat auch etwas gutes, so habe ich wieder etwas dazu gelernt!

    @all noch einmal danke für die Hilfe.

    MFG Matthias.

  10. #10
    Samurai Avatar von Donkey
    Registriert seit
    12.08.2008
    Ort
    München
    Alter
    35
    Beiträge
    237
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: If Problem.

    Gewöhn Dir an einfache und doppelte Anführungszeichen (' und ") zu verwenden.
    Durch die ganzen Backslashes wird das ganze zu unübersichtlich und Fehler werden übersehen.

    In Post #5 hab ich Dir gezeigt wie´s geht.

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •