array ändern

Flame

Erfahrenes Mitglied
Hallo an alle.

Ich habe wiedermal folgendes Prob. Und zwar lese ich meine DB mit PHP nach URL`s aus.
Ist diese da, dann wird diese in ein Array gepfeffert und als IMG SRC ausgegeben.

Ist Sie nicht da, steht false in der DB.
Jedenfalls ist mein Prob, das es das Bild False nit gibt. :(

Wie kann ich jetzt ne Abfrage machen, ob der Wert False oder True ist?
Und wenn false, ne andere URL ins Array übergeben?

Mit isset komme ich nit weiter.
PHP:
if ($daten['HTML_big_Screen_URI'] = false)
    $daten['HTML_big_Screen_URI'] = 'bla.jpg';

Das funzt auch nit. :(

HTML_big_Screen_URI ist der Spaltenname in der DB.

Thx :FLAmE:
 
Hat der Wert in der Tabelle den Wert false oder "false" als String? Darauf solltest du noch achten, ansonsten einfach mal == als Vergleichsoperator nehmen..
PHP:
if ($daten['HTML_big_Screen_URI'] == false)
    $daten['HTML_big_Screen_URI'] = 'bla.jpg';
 
wie timbonet schon meinte, musst du den vergleichsoperator == nehmen und false in hochkommas bzw. anführungszeichen setzen, wenn es ein string ist

folglich müsste es dann so aussehen:

PHP:
if ($daten['HTML_big_Screen_URI'] == 'false')
    $daten['HTML_big_Screen_URI'] = 'bla.jpg';
 
Es funktioniert nicht. :(

Das hatte ich auch schon probiert.

Mein Prob ist:
Es gibt mehrere Spalten in meiner Tabelle.
Ist es ein normales Pic, dann ist der Wert in:
>HTML_big_Screen_URI = http://www.bla01.jpg<
Ist es ne Flashdatei, dann ist der Wert:
>false<
Dafür aber in flashtemplate_SWF_URI:
>http://www.blaflash.jpg<

Versteht Ihr mich?
Ich möchte mit einer if Abfrage prüfen, ob HTML_big_Screen_URI = false ist.
Wenn ja, dann soll er den Wert aus flashtemplate_SWF_URI nehmen.

:FLAmE:
 
Versuch doch folgendes:
PHP:
if ($daten['HTML_big_Screen_URI'] == false)
    $daten['HTML_big_Screen_URI'] = 'bla.jpg';

// oder

if (!$daten['HTML_big_Screen_URI'])
    $daten['HTML_big_Screen_URI'] = 'bla.jpg';
 
Hmm. Isch wärd nochma bleede. ;)

Also mit:
PHP:
if ($daten['HTML_big_Screen_URI']=='false')
 echo "Das ist ne Flash Vorlage";
else
 {
 echo "Das ist ne HTML Vorlage";
 }
Funzt es.

Nun dachte ich mir machste ne Auswahl draus.

Die sollte folgendermaßen aussehen.

PHP:
$Flash=$daten['flashtemplate_SWF_URI'];
$HTML=$daten['HTML_big_Screen_URI'];

// Hier ist nochmehr Code dazwischen

if ($daten['HTML_big_Screen_URI']=='false')
 $bild=$Flash;
else
 {
 $bild=$HTML;
 }

// Dann in der Tabelle
echo '<br><br>HTML Vorschaubild:<br><img src="'.$bild.'" alt="'.$daten['CatID'].'" border="0">

Aber es klappt nit :(
Was mache ich falsch?

:FLAmE:
 
Ja ja, ich wieder.

Nun habe ich mir gedacht, warum erst 2 Variablen ins Spiel bringen, wenn man es auch so machen könnte:
PHP:
if ($daten['HTML_big_Screen_URI']=='false')
 $bild=$daten['flashtemplate_SWF_URI'];
else
 {
 $bild=$daten['HTML_big_Screen_URI'];
 }

Das klappt soweit jetzt super.
Aber warum zeigt er mir nicht die *swf Datei an?

Wenn ich mit der rechten Maustaste die URL prüfe und in die Zwischenablage kopiere, diese dann in nem neuen Browserfenster einfüge, kommt die *.swf Datei.
Also vorhanden isse. Gehen tut sie auch.
Nur in meinem Popupfenster zeigt er ein rotes X. Obwohl die URL stimmt.

Bei nicht Flashdateien geht es auch, das er mir die 2 Bilder zeigt.
Sprich: HTML_Big_Sreen_URI geht doch auch.? *grml*
 
Hmm,

und wie kann ich jetzt HTML Code einfügen, sodass der dann für $Bild den <embed> Befehl nimmt?

z.b.
$bild=<a href="http://www.domain.de/flashfileXY.swf">click mich</a>;
 
Zurück