Ankündigung

Einklappen
Keine Ankündigung bisher.

Variable vergleichen

Einklappen

Neue Werbung 2019

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

  • Variable vergleichen

    Hallo zusammen,

    Ich habe einen Interessanten Fehler.

    Hier mien Code
    PHP-Code:
    echo $angemeldet_als;
    if (
    $angemeldet_als ==' rsc') {
             echo 
    "gleich !";
        }
        else {
            echo 
    "Nicht Gleich !";
        }
    ?> 
    Die Ausgebe Lautet:
    rsc Nicht Gleich !

    "rsc" steht ja für (echo $angemeldet_als; )
    Und "Nicht Gleich !" dafür das die Variable nicht rsc enthält, wie kann das sein? :s


  • #2
    Vielleicht am Blank vor rsc, dass du natürlich bei der Ausgabe nicht erkennen kannst?
    Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

    Kommentar


    • #3
      PHP-Code:
      var_dump($angemeldet_als); 
      Und kannst du bitte mal die :s weglassen. Danke!
      Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
      PHP.de Wissenssammlung | Kein Support per PN

      Kommentar


      • #4
        PHP-Code:
        if ($angemeldet_als ==  ' rsc ') {
                 echo 
        "gleich !";
            }
            else {
                echo 
        "Nicht Gleich !";
            } 
        Ausgabe:

        Nicht Gleich !string(25) " rsc "

        aber ich habe ja die 2 Leerzeichen vor und nacher auch in der abfrage :s

        Hab den Fehler beim Generieren der Variable gefunden

        PHP-Code:
        $angemeldet_als ''htmlspecialchars($_SESSION['user']['username']).''

        Kommentar


        • #5
          Was sollen denn die '' am Anfang und am Ende? Woher hast du so einen Quatsch??
          Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

          Kommentar


          • #6
            Zitat von schnibli Beitrag anzeigen
            Nicht Gleich !string(25) " rsc "

            aber ich habe ja die 2 Leerzeichen vor und nacher auch in der abfrage :s
            Nein, der String ist 25 Zeichen lang, da müssen noch ein paar mehr Leerzeichen drin sein.

            $angemeldet_als = ''. htmlspecialchars($_SESSION['user']['username']).'';
            Wofür sollen die Leerstrings am Anfang und Ende gut sein? Wofür ist htmlspecialchars() hier gut, liegt hier ein Kontextwechsel nach HTML vor (d.h. wird $angemeldet_als direkt an den Browser ausgegeben)? Und worin bestand jetzt der Fehler?

            Kommentar


            • #7
              Mal wieder liegt die Hemmschwelle in einem Fachforum nach Hilfe zu fragen viel zu niedrig, meine Güte...
              http://php-de.github.io/jumpto/grundlagen-quellen/
              Relax, you're doing fine.
              RTFM | php.de Wissenssammlung | Datenbankindizes | Dateien in der DB?

              Kommentar


              • #8
                Zitat von hausl Beitrag anzeigen
                PHP-Code:
                var_dump($angemeldet_als); 
                Und kannst du bitte mal die :s weglassen. Danke!
                Sind die syntaktisch falsch im Posting?

                Warum nicht einfach so?
                PHP-Code:
                $angemeldet_als htmlspecialchars($_SESSION['user']['username']); 
                ''.$string (2x singlequote) brauchst du nur, wenn du zwischen die singlequotes auch was schreibst.. also zb

                PHP-Code:
                $angemeldet_als 'Username: '.htmlspecialchars($_SESSION['user']['username']); 
                .

                Kommentar


                • #9
                  Ja die Syntax wahren Falsch.
                  Ich hatte am schluss " rsc " aber bei var_dump hat es nur "rsc " angezeigt ...


                  Danke für eure Hilfe

                  Kommentar


                  • #10
                    Warum/Woher kommen eigentlich die Leerzeichen? Mit trim() kannst du die entfernen lassen, aber am besten gleich erst gar nicht dazu kommen lassen.
                    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
                    PHP.de Wissenssammlung | Kein Support per PN

                    Kommentar

                    Lädt...
                    X