Abfrgae wenn bild nicht vorhanden dann pixel bild

Hallo,

versuche in einem XT Shop auf HTML Basis mir Bilder anzeigen zu lassen.

Soweit so gut geht auch, nur das dooofe ist mal wieder der IE

→ das „Fehlende Grafik-Bild“ X und der Titel wenn kein Bild vorhanden ist

kann man das irgendwie umgehen , habe schon mit einer IF Abfrage gebastelt komme aber nicht weider?

[HTML]Info[/HTML](Wenn kein Bild vorhanden ist, dann sollte nur eine Pixel-Grafik anzeigen werden)

Danke an alle die eine Idee haben

das machst du über:

file_exists($filename)

Damit kannst du überprüfen ob es das Produktbild gibt.
Wenn nicht, setzt du dein $Products_model auf einen Default-Wert (zB eine Platzhaltergrafik).

Und was machst du da mit den {} im HTML? Sry wenn es richtig ist, sehe ich zum ersten mal :oops:

Ja ist etwas umständlich geht aber.

ich nehme mir die Artikelnummer und lege mir dann entsprechend die Bilder in einen Ordner (diese Funktion gibt es nicht für XT)

Datei hat dann z. B. folgenden Namen: 123456_1.gif (kann mir damit 6 Bilder anzeigen lassen.

Hallo,

wie kann ich das den einbauen → HTML

da habe ich keine Ahnung
[HTML]{if file_exists($„…/…/images/product_info/{$PRODUCTS_MODEL}_1.gif“)}Info[/HTML]DANKE

Du musst das schon im PHP anders aufbauen:
[PHP]<?php if(file_exists("../../images/product_info/".$PRODUCTS_MODEL."_1.gif")) $img = $PRODUCTS_MODEL."_1.gif"; else $img = "platzhalter.png"; ?>

Info[/PHP]Hoffe das geht bei dir, da du die ganze zeit nur von HTML redest ;)

In dem If-Block wird überprüft ob die grafik existiert, und dann entsprechend das Bild gesetzt. Wenn es die grafik nicht gibt, wird das Bild auf den Platzhalter gesetzt.

Wenn das Bild eh nicht da ist, brauch er doch auch kein img-Tag?

ich dachte er will unbedingt eins, egal ob bild oder nicht XD
jo, wenn du kein bild haben willst, musste das halt entsprechend im if-block mit der ausgabe machen:

[PHP]

<?php if(file_exists("../../images/product_info/".$PRODUCTS_MODEL."_1.gif")) echo 'Info'; ?> [/PHP]

junge junge, ihr frickelt euch hier was zusammen…

der aufruf des templates (daher auch die klammern) soll nur erfolgen, wenn es die datei auch gibt.

ein file_exists() existiert in html nicht, daher musst du das vorher abfragen, in deinem php oder sonstigen scripten.

Danke an alle

werde ich mal testen

Habe ein bischen herum gespielt bekomme es aber noch nicht hin

habe jetzt
[HTML]<?php if(file_exists("../../images/product_info/".{$PRODUCTS_MODEL}."_1.gif")){ echo "Info";} { else "Info";} ?>[/HTML]

Seite wird nicht mehr geladen.

Ich weiß immer nicht so recht welche Argumente wie „Eingeklammert“ werden, wer da mal ne geile Quelle (INFO) hat, immer her damit

So müsste es doch richtig sein ???

[PHP]<?php if(file_exists("../../images/product_info/".{$PRODUCTS_MODEL}."_1.gif")){ echo "Info";} else { echo "Info";} ?>[/PHP]

dein Problem sind die " :wink:

wenn du ein Echo machst, verwende lieber einfache ’ dann kannst du im echo selber wieder die doppelten " nehmen, da sonst das echo ja frühzeitig beendet würde!

also musst du schreiben:
[PHP]echo ‚Info‘;[/PHP]eine andere möglichkeit wäre die " im echo selber zu „escapen“. Das mcahst du mittels
also würde das ganze so aussehen:
[PHP]echo „<img src="…/…/images/product_info/“.$PRODUCTS_MODEL.„_1.gif" HEIGHT=70 WIDTH=70 alt="Info" />“;[/PHP]Ich find variante 1 schöner, aber ist geschmachssache!

Da kann man schon mal verzweifeln,

habe alles hin und her probiert, geht das überhaupt oder?

Habe mal direkte Bilder genommen, selbst da wird die Seite nicht geladen

(IE7pro sagt mir „Internal Server Error“)

Ich habe mal in der htaccess die php log eingeschaltet:

Fatal error: Smarty error: [in 3d_business_css/module/product_info/product_info_v1.html line 121]: syntax error: unrecognized tag ‚echo‘ (Smarty_Compiler.class.php, line 583) in /srv/www/vhosts/h1xxxxx.stratoserver.net/subdomains/testshop2/httpdocs/includes/classes/Smarty_2.6.14/Smarty.class.php on line 1100
es scheint als ob die „Smarty“ ?Engine? ein Problem macht

Ich habe gelesen das der Pfad „http://www…“ sein muß ???

Schmeist die Smarty Engine das „echo“ raus?

aha!

Da liegt das problem… durch deine Engine wird deine Seite anders geparst als normalerweise.

(die engine ist letzten endes auch nur php, aber sie sucht nach einer anderen syntax)

Also kannst du scheinbar nicht direkt mit php in einer solchen situation arbeiten…
hmmmm… komisch :sad:

was ist das „Smarty“? ist das der Shop selber oder noch was anderes?

Ist direkt vom Shop, keine Zusatz (wird benötigt) soweit ich weiß

kann man das anders lösen, mein Problem ist ja eigentlich nur → siehe Bild

wenn kein Bild vorhanden ist

Ich frag mich nach wie vor warum ihr unbedingt ein Bild nehmt, wenn es kein Bild gibt? Hat das einen Grund?

Ist für weitere Artikel Bilder Tests usw. wenn es keine gibt sind keine da

Den Satz verstehe ich nicht. Wenn es (es sind Bilder?) keine gibt, dann gebt ihr doch im Moment ein Bild aus, meine Frage war: Wieso?

So viel Stress wollte ich nicht verursachen :?

^^ ich will je nach bedarf mir weiter Bilder (Awards etc.) anzeigen lassen.

Nur wenn keine Dateien vorhanden zeigt IE oder Opera dieses X an ^^ #16

Das ist das einzige Problem,