Bestimmten Text erst Anzeigen wenn in der DB Zeile was steht..

mydoys.de

Well-known member
ID: 84968
L
20 April 2006
2.758
125
Moin Leute.
Ich verzweifle gerade an was eigentlich ganz einfachen..

Zum Anfang.
Ich frage was ab und trage diese in meine DB ein dabei wird aber nicht überall der Inhalt in die DB geschrieben.
Ein Feld bleibt machmal leer.. (so soll es auch sein da wird was bestimmtes gespeichert.)

So dann lasse ich mir den Inhalt anzeigen.
Wenn jetzt aber in dem Feld wo nicht immer was drinnen steht was drinnen ist möchte ich gerne ein Bild anzeigen lassen..

Aber wie geht das?
 
Kann sein, dass das nicht geht, aber kannst du nicht einfach abfragen ob
PHP:
$row->feld == ''
ist? bzw. ist das Feld ganz leer oder wird 0 reingeschrieben als standardwert?
 
Kann sein, dass das nicht geht, aber kannst du nicht einfach abfragen ob
PHP:
$row->feld == ''
ist? bzw. ist das Feld ganz leer oder wird 0 reingeschrieben als standardwert?

Es ist ganz leer..
Und der Inhalt soll nur angezeigt werden wenn was drinnen steht.

Mein Code ist derzeit so:

PHP:
$abfrage = "select * from nachrichten where empfaenger_email='$emailadresse' AND id='$id'";
	$ergebnis = mysql_query($abfrage);
	while($row = mysql_fetch_array($ergebnis))
	{
        ...............
        }
 
hast du mit einem grünen buch mit der Aufschrift "PHP lernen" geübt? Die Variablenbenennung kommt mir so bekannt vor *g*

Wie gesagt, frage doch ab, ob das Feld nicht leer ist und wenn das der Fall ist, gibst du den Text aus.

PHP:
$abfrage = "select * from nachrichten where empfaenger_email='$emailadresse' AND id='$id'"; 
    $ergebnis = mysql_query($abfrage); 
    while($row = mysql_fetch_array($ergebnis)) 
    { 
        if ($row->feld != '') {
            echo $row->feld;
            }
        }

Bzw. ich weiß es nicht genau, ab man kann doch leere Felder auch ermitteln, wenn man abfragt, ob das Feld NULL ist oder?
 
hast du mit einem grünen buch mit der Aufschrift "PHP lernen" geübt? Die Variablenbenennung kommt mir so bekannt vor *g*

Na das Buch würd ich gleich mal entsorgen... wenn der Author noch nichtmal ne konsistente bennenung der Variablen hinbekommt, dann guten Nacht. :ugly:

PS: er verwendet mysql_fetch_array und nicht mysql_fetch_obj... also muss das $row['feld'] heißen.
 
Ähm nein... :ugly:

PHP:
if($row['feld']!='') echo 'blub';

Und ja das es hier nicht zu Missverständnissen kommt... feld musst du gegen den Namen der entsprechenden Spalte tauschen.
 
Ähm nein... :ugly:

PHP:
if($row['feld']!='') echo 'blub';

Und ja das es hier nicht zu Missverständnissen kommt... feld musst du gegen den Namen der entsprechenden Spalte tauschen.

ne das ist klar
hm ok jetzt Funzt das schonmal aber net so ganz wie ich es brauche..
Wie kann ich den das so machen das ich das Blub an eine bestimmte stelle im Code stellen kann?
 
ne das ist klar
hm ok jetzt Funzt das schonmal aber net so ganz wie ich es brauche..
Wie kann ich den das so machen das ich das Blub an eine bestimmte stelle im Code stellen kann?

indem du das echo dort ausgibst wo du es brauchst. wenn kein text vorhanden ist sollte das echo einfach leer sein, dann müsste das passen
 
Hi

auch wenn es leicht OT ist möchte ich kurz was anmerken:

PHP:
if ($row['feld'] = '') ...

um schon im Ansatz das vergessen des zweiten = oder ! zu bemerken sollte man seine if Abfragen so aufbauen:

PHP:
if ('' = $row['feld']) ...

dann bekomt man bei der if Abfrage eine Fehlermeldung und sucht nicht tagelang ein vergessenes = oder ! :)

BTT
PHP:
if (empty(trim($row['feld'])) {
  // tue das wenn das feld leer ist
}else {
  // mach das wenn etwas im feld steht
}

Igel
 
dann bekomt man bei der if Abfrage eine Fehlermeldung und sucht nicht tagelang ein vergessenes = oder ! :)

Versteh' ich nicht so wirklich. Außerdem finde ich das bei Vergleichen eher hässlich/grässlich/irritierend, da meiner Meinung nach

$foo == 'xyz'

vom Aufbau her aus auch wie eine Zuweisung aussieht (man nehme ein = weg).
(Ich bin diese Variante gewöhnt... und bleibe sicherlich auch dabei.)

Vergleiche:

'xyz' == $foo

sieht demnach meiner Meinung nach unschön aus. Und dem String einen Variableninhalt zuweisen wäre hier wohl unmöglich... Eventuell Geschmackssache.
 
Also bei mir kommt

Fatal error: Can't use function return value in write context in ...\wtf.php on line 3

und... ohne trim geht's.... :ugly:
Jetzt wird einiges unklarer!
 
https://de.php.net/empty schrieb:
Anmerkung: empty() überprüft nur Variablen, alles andere führt zu einem Parse-Error. Anders gesagt wird folgendes nicht funktionieren: empty(trim($name)).

Das trim ist so und so schwachsinn... solangs kein Textfeld ist trimt MySql die Daten automatisch.