Bild anzeigen bei wert NULL
Marco
- php
Hallo,
ich habe mir eine Memberliste erstellt.
Mein Problem ist, die Bilder meiner Member. Wenn zb. Member1 noch kein Bild hochgeladen hat, steht in der Datenbank der Wert Null.
Dann wird natürlich in meiner Memberliste auch kein Bild angezeigt.
Wie kann ich jetzt wenn der Wert NULL in der Spalte "avatar" steht.
Denn Member1 ein Bild zuweißen, also ein Standart Bild.
In der DB werden die Bilder Namen gespeichert.
Die Spalte heist "avatar"
Die Spalte sieht zb. so aus:
bild1.jpg
bild2.jpg
NULL
bild3.jpg
NULL
bild4.jpg
bild6.jpg
usw.
Und jetzt möchte ich, das überall wo der Wert NULL steht ein Standard Bild erscheint.
Ich hoffe ihr versteht, was ich meine. Wenn nicht versuche ich es nochmal zuerklären :D
Vielen Dank
mfg Marco
Mahlzeit Marco,
In der DB werden die Bilder Namen gespeichert.
Die Spalte heist "avatar"
Wenn Du jetzt Deine verwendete Datenbank angegeben hättest, könnte man Dir sagen, ob dieses eine dem IFNULL() aus MySQL vergleichbare Funktion hat ... dann hättest Du nämlich direkt den Namen des "Standardbilds" in der Ergebnismenge, die Du von der Abfrage zurückerhältst.
MfG,
EKKi
Grüße,
oder man vergibt in der spalte defaultwert?
bleicher
Hi,
oder man vergibt in der spalte defaultwert?
das habe ich auch schon versucht, jedoch bleibt der Wert NULL.
Ich habe in der DB, in der Spalte "avatar" den Wert NULL in standart.jpg geändert.
mfg Blackwane
@@Marco:
nuqneH
standart.jpg
Zeigt dieses Bild eine Flagge oder was anderes?
Qapla'
hi,
standard.jpg :D
mfg marco
Hi,
Wenn Du jetzt Deine verwendete Datenbank angegeben hättest, könnte man Dir sagen, ob dieses eine dem IFNULL() aus MySQL vergleichbare Funktion hat ... dann hättest Du nämlich direkt den Namen des "Standardbilds" in der Ergebnismenge, die Du von der Abfrage zurückerhältst.
Meinst du das?
MySQL - 5.0.32-Debian_7etch10-log
mfg Marco
Mahlzeit Marco,
Wenn Du jetzt Deine verwendete Datenbank angegeben hättest, könnte man Dir sagen, ob dieses eine dem IFNULL() aus MySQL vergleichbare Funktion hat ... dann hättest Du nämlich direkt den Namen des "Standardbilds" in der Ergebnismenge, die Du von der Abfrage zurückerhältst.
Meinst du das?
MySQL - 5.0.32-Debian_7etch10-log
Genau das meinte ich. Und da ich mit meiner Raterei offenbar Glück hatte, darfst Du Dir den o.g. Link anschauen und die Funktion IFNULL() direkt in der SQL-Abfrage benutzen.
MfG,
EKKi
Grüße,
frage verständlich - das Problem nicht. was kannst du da nicht lösen? was an deinem aktuellen Lösungsansatz verhindert es?
MFG
bleicher
hi,
man ihr seid ja schneller als die Polizei :D
frage verständlich - das Problem nicht. was kannst du da nicht lösen? was an deinem aktuellen Lösungsansatz verhindert es?
ich weiß einfach nicht, wenn der Wert NULL ausgelesen wird, wie ich den zb. in standard.jpg umwandeln kann.
hier mal meine PHP Datei:
$ergebnis=mysql_query("SELECT avatar as foto FROM jos_cbe")
while($ausgabe = mysql_fetch_object($ergebnis)) {
echo '<tr>'."\n";
echo '<td><img src='.$ausgabe->foto.' width="60px"></td>'."\n";
echo '</tr>'."\n";
}
Das ist jetzt nur der Teil aus meiner PHP Datei, wo ich das Avatar Bild ausgeben lasse.
Ich hoffe das hilft ein bisschen weiter.
mfg Marco
Grüße,
1)um dateiname rum bei img src sind einführungsstriche empfohlen
2)imho suboptimaler code, aber das ist die einfachstdenkbare Lösung die mit minimalen PHPkentnisse geht:
$ergebnis=mysql_query("SELECT avatar as foto FROM jos_cbe")
while($ausgabe = mysql_fetch_object($ergebnis)) {
echo '<tr>'."\n";
if($ausgabe['foto']!==NULL){
echo '<td><img src='.$ausgabe->foto.' width="60px"></td>'."\n";
}else{
echo '<td><img src="default.jpg" width="60px"></td>'."\n";
}
echo '</tr>'."\n";
}
MFG
bleicher
--
\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_-
![](http://img296.imageshack.us/img296/9641/minibannerso7.jpg)
[FirefoxMyth](http://www.firefoxmyths.com)
hi,
danke dir, so hätte es auch funktoniert.
ich habe es jetzt so gelöst.
$bild =( $ausgabe->foto ) ? $ausgabe->foto : 'default.jpg';
funktioniert einwandfrei
vilen dank
mfg marco
Hallo Marco,
ich weiß einfach nicht, wenn der Wert NULL ausgelesen wird, wie ich den zb. in standard.jpg umwandeln kann.
Ein if in Verbindung mit is_null() sollte helfen. Statt eines if könntest du kürzer auch einen Trinitäts-Operator verwenden.
Noch zwei Hinweise zu deinem Code:
$ergebnis=mysql_query("SELECT avatar as foto FROM jos_cbe")
Mal abgesehen davon, dass die Fehlerbehandlung und ein Semikolon am Ende der Zeile fehlen: du bist dir darüber im Klaren, dass du die Datensätze in einer zufälligen Reihenfolge bekommst?
while($ausgabe = mysql_fetch_object($ergebnis)) {
Was finden nur alle an mysql_fetch_object() so cool? mysql_fetch_assoc() finde ich wesentlich besser handhabbar ...
Gruß,
Tobias