SQL/PHP "Bug". Einzelner Beitrag wird mehrfach angezeigt

  • Hallo,


    ich kämpfe gerade mit einem nervigen Fehler in meiner SQL Datenbank bzw. meiner PHP Anzeigeseite dazu. Ich weiß einfach nicht, woran es liegt, daher gebe ich euch hier mal meine Fehlerbeschreibung.


    Es geht im Speziellen um ein bestimmtes Feld in der Datenbank. Das Feld heißt "color" und soll eine Farbangabe zum dazugehörigen Teil abspeichern. Sobald das Feld einen Eintrag hat, soll in der Tabelle, die per PHP/HTML ausgegeben wird, ein entsprechendes Icon erscheinen.


    Ich habe dies bis jetzt so gelöst:




    PHP
    if ($color) $farbicon="<img src='color.png' border=0 hspace=1 title='$color' alt='Bild' width=16 height=16>";


    und in der Tabelle später dann sinngemäß:


    PHP
    echo $farbicon;


    Das Problem ist jetzt aber: Sobald auch nur ein einziger Datensatz einen Eintrag im Feld "Color" hat, wird in der Ausgabeseite nicht nur bei diesem Eintrag das gewünschte Icon angezeigt, sondern scheinbar ganz sporadisch auch noch bei einigen anderen Einträgen, die aber in der Datenbank überhaupt keinen Eintrag im Feld "Color" haben.


    Die Ausgabetabelle funktioniert bei mir per "for" Schleife. D.h. es wird ein Datensatz nach dem anderen ausgelesen und die entsprechenden Einträge angezeigt.

  • ohne mich groß damit auszukennen würde ich sagen du musst nach der Ausgabe $farbicon wieder zurücksetzten. Allerdings wäre das Ergebniss bei diesem Fehler nicht "sporadische" Anzeige des Icons, sondern "ab dem ersten Auftreten wird es immer angezeigt". :confused:


    ansonsten sieht das ganze eigentlich gut aus...
    Probier doch einfach mal dir jeweils "color" selbst ausgeben zu lassen, damit du weißt ob das zumindest immer richtig ist.

  • Arg ;)


    Natürlich hast du völlig Recht. Und war sogar wirklich nicht sporadisch (ich dachte es), sondern genau ab dem Eintrag für den diese Variable dann galt. Hatte wohl einen :gpaul:


    Danke :top:

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!