Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] If Anweisung wird nicht ausgeführt

Einklappen

Neue Werbung 2019

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

  • [Erledigt] If Anweisung wird nicht ausgeführt

    Hallo zusammen,

    ich habe ein mehr oder minder kleines Problem. Nachdem ich nun seit ca einer Stunde (ja, einer Stunde..) daran herumwerkel, stelleich meine Frage hier.

    In Tabelle 1, Spalte 'image' ist die Dateiendung einer hochgeladenen Datei eingetragen. In diesem Falle ".jpg"

    Warum wird bei diesem Code: (ich weiß, dass das nicht allzu intelligent ist, aber es ist ungefähr die vierte Möglichkeit, die mir noch eingefallen wäre. Siehe weiter unten für meine erste Variante)
    PHP-Code:
                if($row->image == '.jpg' or $row->image == '.png' or $row->image == '.gif') {
                    echo 
    "<img src=images/".$id.$row->image." border=0>";
                }
                elseif(
    $row->image == '') {
                    echo 
    "<img src='images/noimg.jpg' border=0>";
                }
                elseif(
    $row->image == 'deleted') {
                    echo 
    "<img src='images/deleted.jpg' border=0>";
                } 
    das Erste nicht angezeigt? Ich habe schon geschaut,die Datei ist hochgeladen und lässt sich so auch einbinden:
    PHP-Code:
    echo "<img src=images/".$id.$row->image." border=0>";
    Ich weiß immer nicht, wie ich das erklären soll.. ICh hoffe, ihr versteht mich..
    Bin ich da falsch vorgegangen? Das kann doch nicht so schwer sein.. Das ist doch noch nicht einmal eine komplizierte Operation hier!

    Dankeschön im Voraus

    P.S. Ich habe das Ganze auch bereits in mehreren Varianten durch!
    ZB:
    PHP-Code:
                if($row->image == '') {
                    echo 
    "<img src='images/noimg.jpg' border=0>";
                }
                elseif(
    $row->image == 'deleted') {
                    echo 
    "<img src='images/deleted.jpg' border=0>";
                }
                else {
                    echo 
    "<img src=images/".$id.$row->image." border=0>";
                } 


  • #2
    Hast du dir mal angeschaut was im Quelltext kommt? Was steht in $row->image? Ist da wirklich die Dateiendung drin oder ist die Variable vlt. leer? Du müsstest schon etwas mehr Code zeigen.

    Kommentar


    • #3
      Das erfährst Du, wenn Du Dir $row->image ausgeben lässt.
      PHP-Code:
      var_dump($row->image); 
      Mal ehrlich - woher sollen wir das wissen?!
      --

      „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
      Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


      --

      Kommentar


      • #4
        Error Reporting hochgeschraubt? Fehlermeldung?

        Kommentar


        • #5
          Ich habe den Fehler gefunden.. ich habe das falsche Error-Reporting benutzt! Mit e_all bekam ich die Fehlermeldung, dass $id nicht definiert ist:
          PHP-Code:
                      if($row->image == '.jpg' or $row->image == '.png' or $row->image == '.gif') {
                          echo 
          "<img src=images/".$id.$row->image." border=0>";
                      } 
          Ersetzt durch
          PHP-Code:
          $row->id 
          und alles prima.. Entschuldigt für diesen mittlerweile scheinbar überflüssigen Thread. Bin beim programmieren wohl einfach ein wenig unaufmerksam gewesen *grml*

          Grüße
          Danke

          @ nikosch: Dann habe ich ".jpg" herausbekommen.. Genau das,was drin ist - wie ich auch erwähnt habe. Ich dachte vielleicht ich habe was übersehen und ihr bemerkt das.. Tut mir leid, wenn ich dir damit mal wieder auf die Nerven gefallen sei nsollte Mr. Kompetent. Ich bemühe mich schon, verständlich zu fragen..
          Grüße,
          Ms Inkompetent

          Kommentar


          • #6
            Dann habe ich ".jpg" herausbekommen.. Genau das,was drin ist. Ich dachte vielleicht ich habe was übersehen und ihr bemerkt das.. Tut mir leid, wenn ich dir damit mal wieder auf die Nerven gefallen sei nsollte Mr. Kompetent.
            Grüße,
            Ms Inkompetent
            Tut mir leid, Ms. Telepathie, meine Psi-Antenne für Gedankenübertragung ist wohl irgendwie kaputt. Wenn Du solche Erkenntnisse hast, musst Du es eben hinschreiben, wir können nämlich nicht Hellsehen.
            --

            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
            Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


            --

            Kommentar


            • #7
              Hättest du in der einen Stunde ein einziges mal in den HTML Quelltext geschaut hättest du wohl sofort gesehen das .jpg drin steht aber die ID nicht.

              Kommentar


              • #8
                Sonst noch jemand der auf mir herumhacken mag? Das macht gerade so einen Spaß!
                Für die Zukunft weiß ich es besser und riskiere einen Blick in den Quelltext. Da habe ich einfach in dem Moment überrhaupt nicht dran gedacht .. und sorry dafür.

                @nikosch: Ich zitiere mich einmal selbst
                In Tabelle 1, Spalte 'image' ist die Dateiendung einer hochgeladenen Datei eingetragen. In diesem Falle ".jpg"
                Also, wenn ich sage, dass dort gewisse Dinge eingetragen sind, heißt das, dass ich es auch sicher weiß. Denn selbst wenn ich dir noch so dumm rüberkommen mag, gibt es doch so Dinge, die auch mir unterpriviligiertem Lebewesen noch einfallen. Wie zb "Hey, vielleicht ist .jpg ja gar nicht eingetragen? Da schau ich erstmal nach.."

                Kommentar


                • #9
                  Also, wenn ich sage, dass dort gewisse Dinge eingetragen sind, heißt das, dass ich es auch sicher weiß. Denn selbst wenn ich dir noch so dumm rüberkommen mag, gibt es doch so Dinge, die auch mir unterpriviligiertem Wesen noch einfallen. Wie zb "Hey, vielleicht ist .jpg ja gar nicht eingetragen? Da schau ich erstmal nach.."
                  Richtig. Das beschreibt, was in der DB steht. Es beschreibt nicht, ob diese Daten in PHP ankommen. Was für das geschilderte Problem eine elementare Information ist.
                  In Tabelle 1, Spalte 'image'ist die Dateiendung einer hochgeladenen Datei eingetragen. In diesem Falle ".jpg"
                  --

                  „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                  Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                  --

                  Kommentar


                  • #10
                    Nun, da die beiden unteren If-Anweisungen durchaus ausgeführt wurden (welche auch durch $row->image auf Inhalt überprüft wurden), ist klar, dass die Daten in Php ankommen.. Was ich auch erwähnt habe.
                    Ich gebe dir in dem Punkt recht, dass ich es vielleicht hätte ausführlicher erwähnensollen bzw. extra darauf hinweisen sollen.

                    Kommentar


                    • #11
                      Ich beantworte hier schon seit 7 Jahren Fragen zum Thema PHP, nikosch ebenfalls schon sehr lang (weiß nicht wie lang genau) auf jeden Fall haben wir es schon oft genug gehabt, dass jemand sagt "etwas steht in der DB" aber im Endeffekt war dann doch nichts in der Variable oder so ähnlich.

                      So was kommt immer wieder vor, deshalb fragen wir auch immer wieder genau nach, denn das sollte immer zuerst geprüft werden (auch ich gehe so vor).

                      Kommentar


                      • #12
                        Nun, da die beiden unteren If-Anweisungen durchaus ausgeführt wurden (welche auch durch $row->image auf Inhalt überprüft wurden), ist klar, dass die Daten in Php ankommen..
                        Warum wird bei diesem Code … Gelaber … das Erste nicht angezeigt?
                        lese ich da oben. Was für mich bedeutet: erste Klammer wird nicht durchlaufen. Wo hast Du da was gegenteiliges erwähnt? Sehe ich nicht, sorry.
                        --

                        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                        Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                        --

                        Kommentar


                        • #13
                          Indem ich meinte, dass "Erste" wird nicht angezeigt, meinte ich auch lediglich das Erste.

                          JA, ich habe NICHTTT extra erwähnt, dass Nummer 2 und 3 angezeigt werden.

                          Ich bin unfähig, du super - und ich habe meine Ruhe, okay?

                          Das Einzige, was mir wirklich auf den Geist geht, ist dass man in JEDEM PHP Forum teilweise nur angemacht wird. Und das fast egal, wo man sich anmeldet. Die Einen sagen "Mülle uns nicht mit unnützen Erkenntnissen zu, das interessiert hier nicht, es geht nur um - dies und das -" und "Fasse dich kürzer.. Dein Text ist zu lang mit zu vielen Informationen, die man nicht gebrauchen kann", Andere sagen "Mülle uns mit Erkenntnissen zu", "Schreibe mehr, wir können nicht hellsehen". Ich bastel jedes Mal lieber stundenlang, teilweise Tagelang an einem CodeSCHNIPSEL rum, bevor ich in ein Forum gehe, da dieses nahezu meiner Psyche schadet! (Nein, nicht wirklich - übertrieben dargestellt) Da bekommt man ja Minderwertigkeitskomplexe...

                          Kommentar


                          • #14
                            Können wir uns nun vertragen und lieb sein?

                            Kommentar


                            • #15
                              Nein, nicht ok. Du hast einen Fehler gemacht und machst mich hier an, weil ich Dich nicht wie ein Kindergartenkind an die Hand genommen habe. Ich bin jedenfalls nicht im Eröffnungspost sofort in die Offensive gegangen.

                              Zitat
                              Grund: Das Wort "Problem" im Threadttitel.. Nicht dass nikosch bös wird ._.
                              Sowas kann man vermeiden, wenn man sich denken, kann, dass jemand das vielleicht in den falschen Hals bekommt. Von daher, gleich mal ran an die eigene Nase:
                              Das Einzige, was mir wirklich auf den Geist geht, ist dass man in JEDEM PHP Forum teilweise nur angemacht wird.
                              Wenn einem etwas entgegenschallt, steht man meist vor dem Wald, in den man gerade hineingeschrie(b)en hat. Denn schau Dir mal Beitrag #3 an, ob der jetzt wirklich so unhöflich war, oder ob Du nur mit einem negativen Gefühl in den Thread gegangen bist..
                              --

                              „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                              Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                              --

                              Kommentar

                              Lädt...
                              X