Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
Seiten: 1
#1 13. September 2011 18:25
- mike-r
- arbeitet mit CMS/ms
- Registriert: 21. Dezember 2010
- Beiträge: 898
- Webseite
[GELÖST] If-abfrage ob Datei (Bild) existiert
ich suche die Möglichkeit dynamisch abzufragen, ob ein Bild existiert oder nicht.
Konkret möchte ich page-alias-abhängig Grafiken einbinden, etwa so:
<img src="/uploads/images/{$page_alias}.jpg" alt="" />
Wenn das Bild bananen.jpg nicht exisitert soll nichts gemacht werden.
Geht sowas? Stelle ich mir etwas schwierig vor, da in der DB bspw. keine Infos über die Grafiken stehen.
Irgendwelche Ideen dazu? (mittels CSS wäre ja einfach, aber das kann ich in dem Falle nicht verwenden)
Unablässige Tools für's Webdevelopement/ Fehlerfindung: CSS Validierungsservice, Bildschirmlineal, Firebug, Tidy, Deutsche CSS-Referenz
Offline
#2 13. September 2011 18:46
- NaN
- Moderator
- Ort: Halle (Saale)
- Registriert: 09. November 2010
- Beiträge: 4.437
Re: [GELÖST] If-abfrage ob Datei (Bild) existiert
Probier mal das:
{capture assign="image"}uploads/images/{$page_alias}.jpg{/capture}
{if $image|file_exists}
<img src="/{$image}" alt="" />
{/if}
Beitrag geändert von NaN (13. September 2011 21:41)
Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)
Offline
#3 13. September 2011 18:59
- piratos
- arbeitet mit CMS/ms
- Registriert: 12. August 2011
- Beiträge: 545
Re: [GELÖST] If-abfrage ob Datei (Bild) existiert
[== Smarty ==]
{if is_file("uploads/images/`$page_alias`.jpg")}
halloo
{else}
nix da
{/if}
Offline
#4 13. September 2011 20:34
- piratos
- arbeitet mit CMS/ms
- Registriert: 12. August 2011
- Beiträge: 545
Re: [GELÖST] If-abfrage ob Datei (Bild) existiert
Ich warne in dem Zusammenhang unnötige capture zu verwenden, denn jedes capture zieht sich über den Outputbuffer ein Minimum von 4096 Bytes rein und granuliert die Memory Strecke, macht man das in einer längeren Schleife kann es trotzt ausreichendem memory_limit eng werden.
Offline
#5 13. September 2011 20:59
- NaN
- Moderator
- Ort: Halle (Saale)
- Registriert: 09. November 2010
- Beiträge: 4.437
Re: [GELÖST] If-abfrage ob Datei (Bild) existiert
Finde die capture Methode selber nicht toll. Hab nur nicht daran gedacht, dass man bestimmte PHP-Sprachkonstrukte auch direkt in Smarty einsetzen kann.
Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)
Offline
#6 13. September 2011 21:31
- mike-r
- arbeitet mit CMS/ms
- Registriert: 21. Dezember 2010
- Beiträge: 898
- Webseite
Re: [GELÖST] If-abfrage ob Datei (Bild) existiert
piratos' Schnipsel gefällt mir egtl. besser, er tut nur leider nicht, NaNs Schnipsel tut mit folgender Modifikation:
{capture assign="image"}uploads/images/{$page_alias}.jpg{/capture}
{if $image|file_exists}
<img src="/{$image}"
{/if}
danke euch beiden!
Beitrag geändert von mike-r (13. September 2011 21:32)
Unablässige Tools für's Webdevelopement/ Fehlerfindung: CSS Validierungsservice, Bildschirmlineal, Firebug, Tidy, Deutsche CSS-Referenz
Offline
#7 13. September 2011 21:50
- piratos
- arbeitet mit CMS/ms
- Registriert: 12. August 2011
- Beiträge: 545
Re: [GELÖST] If-abfrage ob Datei (Bild) existiert
Dann hast du möglicherweise die Backticks übersehen ohne die funzt es nicht.
Ausprobiert mit cmsms 1.9 die letzte und 1.10 die letzte.
Offline
#8 14. September 2011 23:14
- mike-r
- arbeitet mit CMS/ms
- Registriert: 21. Dezember 2010
- Beiträge: 898
- Webseite
Re: [GELÖST] If-abfrage ob Datei (Bild) existiert
Backticks? Du meinst die Anführungszeichen? Das is immer das Erste, wonach ich schaue, wenn ich irgendwo Code herkopiere.
Edit: lol, hätte ich wohl besser nicht schauen dürfen - der Code läuft so, hatte bei meinem Versuch die "Backticks" "korrigiert".
Beitrag geändert von mike-r (14. September 2011 23:16)
Unablässige Tools für's Webdevelopement/ Fehlerfindung: CSS Validierungsservice, Bildschirmlineal, Firebug, Tidy, Deutsche CSS-Referenz
Offline
#9 14. September 2011 23:16
- dc2
- kennt CMS/ms
- Registriert: 26. November 2010
- Beiträge: 140
- Webseite
Re: [GELÖST] If-abfrage ob Datei (Bild) existiert
Backticks (das obere Akzentzeichen neben Backspace) sind eigentlich keine richtigen Anführungszeichen aber werden manchmal als spezielle Variante verwendet, z.B. in SQL oder eben auch bei Smarty, um eingebettete Variablen richtig zu maskieren.
Offline
#10 14. September 2011 23:30
- mike-r
- arbeitet mit CMS/ms
- Registriert: 21. Dezember 2010
- Beiträge: 898
- Webseite
Re: [GELÖST] If-abfrage ob Datei (Bild) existiert
wieder was gelernt
Unablässige Tools für's Webdevelopement/ Fehlerfindung: CSS Validierungsservice, Bildschirmlineal, Firebug, Tidy, Deutsche CSS-Referenz
Offline
Seiten: 1