[PHP] isset fehler

  • Hallo leute,


    irgendwie will die funktion isset nicht.
    Wen alle felder ausgefüllt sind soll OK erscheinen wen nicht soll "Please fill <b>all</b> fields!" erscheinen.
    Es erscheint aber nur "Please fill <b>all</b> fields!"


    Code:


    Auch mit !isset geht es nicht.
    Ich hab es auch so probiert:

    PHP
    if($fullname&&$username&&$passwortd&&$repeatpassword)


    Hoffe mir kann einer helfen.

  • strlen?



    Istn pseudo code, ich weiß nicht ob er jetzt funktioniert, aber kannst es ja mal versuchen.


    EDIT: Falls es nicht geht versuch es so:

    PHP
    if(isset(strlen($Variable) != 0) && ....)
  • if(isset($fullname == $username == $password == $repeadpassword))

  • Google Earth und Momo500 deren vorschläge funktionieren auch nicht.


    PHP
    if(isset($fullname) &&isset($username) &&isset($password) &&isset($repeadpassword))


    Funktioniert auch nicht.

    Einmal editiert, zuletzt von AdnaN ()


  • Mit "isset" überprüfst du, ob eine Variable deklariert ist. Wenn du überprüfen willst ob sie leer ist, kannst du "empty" nehmen.


    Ich hoffe dass dies geholfen hat.


    MfG,
    Realist


  • So machst du aber aus UND ein ODER.
    Willst du es jetzt so machen, dass entweder einer dieser Variablen keinen Wert hat, oder wenn alle Variablen keinen Wert haben?
    Und zeig auch mal das Formular.

  • Wenn du mir jetzt erklärst wo ich aus "und" ein "oder" mache, wäre ich dir dankbar. :P


    Ich benutze diese Methode schon auf diversen Homepages und hatte nie Probleme.


    Ist ist ja so..
    Man definiert eine Variable, welche den Wert "1" bekommt.
    Weicht nun ein Wert (is empty) ab, wird der Variablenwert zu "0" und die letzte Abfrage spuckt den Fehler aus.
    So kann man z.B. auch später explizit darstellen, welches Formular nicht bzw. falsch ausgefüllt worden ist. ;)


    Und ob ich nun überprüfe ob alle Variablen keinen Wert haben (alle Variablen in einer Abfrage überprüfen) oder dies wie oben genannt erledige, ist eigentlich auch nur eine Geschmackssache.


    MfG,
    Realist

  • Ich will das wen ein Feld leer ist "Alle felder ausfüllen" erscheint.


    Hier mal der <form> Code:

    Einmal editiert, zuletzt von AdnaN ()

  • Dann würde ich darauf tippen dass du irgendwo einen Fehler bei den Namen der Formularelemente gemacht hast. ;)


    Versichere dich nochmal, dass die Bezeichnungen stimmen. ;)


    Ansonsten.. poste Mal die gesamte Seite mit dem HTML Formular.



    //Edit:

    Code
    $repeatpassword = strip_tags($_POST['repeadpassword']);


    muss nach deinem HTML-Code zu

    Code
    $repeatpassword = strip_tags($_POST['repeatpassword']);


    werden. ;)

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen

  • Ahh sry, du machst das so, er macht es so. Also er prüft ab, wenn nicht alle Felder gesetzt sind, dann Fehler, und du prüst ab, wenn ein Feld nicht gesetzt, Fehler.
    Ehm ich würde an deiner Stelle das gleich immer direkt schreiben sprich,

    PHP
    if(isset($_POST['var1']) && isset($_POST['var2']) && isset($_POST['var3'])) echo 'ok';
    else echo "Please fill <b>all</b> fields!";
  • Dann mach das sowie ich es da geschrieben habe und danach dann. $var1 = strip_tags($_POST['var1']);
    Sprich dann so:


    PHP
    if(isset($_POST['var1']) && isset($_POST['var2']) && isset($_POST['var3']))
    {
       echo 'ok';
      $var1 = strip_tags($_POST['var1']);
      $var2 = strip_tags($_POST['var2']);
    }
    else die ("Please fill <b>all</b> fields!");


    Das die macht, dass du das Script nicht mehr weiter macht. Aber am besten alles zwischen den {} schreiben.