isset funktion nicht

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • isset funktion nicht

    Hallo, ich habe jetzt schon im Forum gesucht, aber nicht passendes gefunden. Ich habe mitlerweile das Gefühl mein PHP interpretier spielt verrückt. Ich kann mir das alles nicht erklären.

    Also worum geht es? Einfache Variablenübergabe mit Post und das abchecken, ob die Variable gesetzt ist.

    Hier ist mein Forumular
    PHP-Code:

    <form name="form1" method="post" action="eintragen.php">
      <
    p>
         <
    input type="text" name="namen">
        
    Loginname</p>
      <
    p
    </
    form
    Die Variable Namen wird auch an die Datei eintragen.php übergeben,
    ich kann sie sehr schön auf der eintragen.php mit echo $_POST['namen'] ausgeben.

    nur funktioniert das prüfen nicht.



    PHP-Code:
    if (isset($_POST['namen']))

    {
        echo 
    "name ist  gesetzt";

    Und name ist gesetzt erscheint immer wenn ich auf den submit Button drücke, egal ob ich was in das entsprechnede Feld eingetragen habe oder nicht.

  • #2
    Versuch mal
    empty

    Nach der Übertragung per GET oder POST ist Deine Variable grundsätzlich gesetzt, wenn auch leer. Dies kannst Du mit var_dump() herausfinden
    Happiness is an empty error log

    Kommentar


    • #3
      Ok, danke.
      Früher hat das aber mit isset bzw dem negierten isset funktioniert
      Ich verwende jetzt die Version 4.3.4.

      Kommentar


      • #4
        Ok, danke für den Tipp, früher hat das aber mit isset bzw !isset funktioniert.

        EDIT: Es funktioniert einwandfrei mit empty, obwohl ich fast Amok wegen isset gelaufen wäre.

        DANKE!!!!

        Kommentar


        • #5
          empty() kann auch ne falle werden, z.b. wenn du einen wert '0' übertragen hast, oder das willst. check mal das manual ab ...

          ich mache das immer so und habe nie schwierigkeiten damit .....

          PHP-Code:
          if (isset($_POST['xyz']) && trim($_POST['xyz'])!='')
          {
              echo 
          'alles klar';
          }
          else
          {
              echo 
          'auf ein neues ....';

          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #6
            Ja, ich habe das mit der 0 eben im manual gelesen. Muss man halt drauf achten. Ich habe aber mit isset wieso auch immer riesenProbleme gehabt.

            Kommentar


            • #7
              auch immer
              weil du ohne trim() gearbeitet hattest. ;-)
              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


              Kommentar


              • #8
                mittlerweile funktioniert es auch mit empty nicht mehr.

                Konkret funktioniert das hier nicht
                Wieso sollte da Leerraum in meinen Postvariablen sein?
                PHP-Code:
                  if (empty($_POST['email']))
                        {
                         print 
                'Du hast vergessen deine Email Adresse einzutragaaen';
                          echo 
                "<BR>";
                        } 
                Die Variable heisst aber garantiert email und wird per post übertragen


                Deshalb noch ne Frage zu trim
                Was muss ich denn trimmen?

                Im manual steht



                PHP-Code:
                Diese Funktion entfernt Leerraum am Anfang und Ende einer ZeichenketteDer gekürzte String wird zurück gegebenAls überflüssige Zeichen werden z.Ztangesehen"\n""\r""\t""\v""\0" und normale Leerzeichen
                Also sollte ich etwa so was schreiben

                trim ($_POST['email']) und dann noch mal mit isset versuchen???

                Kommentar


                • #9
                  Ok, problem hat sich erledigt, war ne falsche weiterleitung

                  Kommentar


                  • #10
                    Habe noch ne Frage zum trim
                    trim -- Entfernt überflüssige Zeichen ("whitespace") am Anfang und Ende eines Strings
                    was macht dann
                    PHP-Code:
                    trim($_POST['xyz'])!='' 
                    ?

                    bzw was sagt mit dieser Ausdruck
                    PHP-Code:
                    !=" ? 
                    Also entfernt trim quasi alle überflüssigen zeichen bis auf leerzeichen wenn ich !=" verwende?

                    Kommentar


                    • #11
                      Hm.. wasfür 'ne Frage, du kennst Vergleiche? also was mach man in diesem Fall?

                      Kommentar


                      • #12
                        ich habe kein Ahnung was man in diesem Fall macht, ich will ja nur wissen was die Negation macht.

                        Kommentar


                        • #13
                          Original geschrieben von zabarax
                          ich will ja nur wissen was die Negation macht.
                          ein ergebnis (z. b. das eines vergleichs) negieren?

                          negieren = verneinen
                          Ich denke, also bin ich. - Einige sind trotzdem...

                          Kommentar


                          • #14
                            um das rätsel mal zu lösen ... .man nehme einen string... hier könnten evtl leerzeichen drin sein. diese trim()t man(n) nun und prüft, ob KEINE leerzeichen vorhanden sind.

                            @zabarax
                            wo ist denn jetzt das problem das nachzuvollziehen?
                            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                            Kommentar


                            • #15
                              OK, es gibt kein problem mit dem negierten trim mehr

                              Danke

                              Kommentar

                              Lädt...
                              X