ilch Forum » Allgemein » HTML, PHP, SQL,... » PHP in HTML verwenden

Geschlossen
  1. #1
    User Pic
    Domme_09 Mitglied
    Registriert seit
    08.07.2008
    Beiträge
    267
    Beitragswertungen
    0 Beitragspunkte
    Hallo Zusammen,

    ich habe ein Problem php-Code in html auszuführen...
    Kurz zum Hintergrund: Ich möchte den Header zufällig machen. Wir haben mehrere und die sollen zufällig wechseln.

    So hab ich's versucht:
    <tr><td class="header" colspan="2" style="background-image: url(images/header_<?php echo rand(0,2); ?>.png);">&nbsp;</td></tr>


    Die header-img heißen "header_0.png", "header_1.png" usw.

    Allerdings scheint hier irgendwas falsch zu sein, aber ich find den Fehler nicht. Er hat im style dann gar nichts mehr stehen, wenn ich mir die Seite anzeigen lasse...

    Hat jemand von euch eine Idee?

    betroffene Homepage: externer Link
    www.bvbsupporters-ms.de
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Son!c Hall Of Fame
    Registriert seit
    14.09.2006
    Beiträge
    3.766
    Beitragswertungen
    5 Beitragspunkte
    Du kannst in einer HTML-Datei kein PHP Code ausführen. Dafür brauchst du dann schon eine PHP Datei. Und dann einfach deine index.htm nach index.php umzubenennen funktioniert genau so wenig zwinker

    Du könntest dafür dann einfach ne Extra Box machen was eventuell ein bisschen einfacher wäre, oder du schraubst am "Core" von ilch rum ...


    Zuletzt modifiziert von Son!c am 18.04.2010 - 01:13:24
    Nimm das Leben nicht zu ernst, du kommst sowieso nicht lebend raus.
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    dastiii Mitglied
    Registriert seit
    27.12.2005
    Beiträge
    2.354
    Beitragswertungen
    84 Beitragspunkte
    ZitatZitat geschrieben von Son!c

    Du kannst in einer HTML-Datei kein PHP Code ausführen. Dafür brauchst du dann schon eine PHP Datei.


    Naja das stimmt so aber auch nicht, du kannst schon einstellen, dass auch .html-Dateien vom PHP-Parser geparsed werden.
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Son!c Hall Of Fame
    Registriert seit
    14.09.2006
    Beiträge
    3.766
    Beitragswertungen
    5 Beitragspunkte
    ZitatZitat geschrieben von DaStIaC

    Naja das stimmt so aber auch nicht, du kannst schon einstellen, dass auch .html-Dateien vom PHP-Parser geparsed werden.

    Ok, man lernt eben nie aus. Hab hier eben was gefunden externer Link
    Danke, werde ich selber zwar nicht einsetzen aber trotzdem interessant lächeln
    Nimm das Leben nicht zu ernst, du kommst sowieso nicht lebend raus.
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Revolution Hall Of Fame
    Registriert seit
    14.08.2006
    Beiträge
    1.688
    Beitragswertungen
    109 Beitragspunkte
    hier mal eine andere lösung.
    Alle Header kommen in einen Ordner.
    Mögliche Formate: jpg jpeg png gif

    So, in den Ordner mit den Bildern, diese PHP Datei packen/ erstellen.

    rotator.php
    <?php
    $files = array(); 
    $folder = './';
    
    $handle = opendir($folder);
    $exts = explode(' ','jpg jpeg png gif');
    while (false !== ($file = readdir($handle))) {
    	foreach($exts as $ext) { // for each extension check the extension
    		if (preg_match('/\.'.$ext.'$/i', $file, $test)) { // faster than ereg, case insensitive
    			$files[] = $file; // it's good
    		}
    	}
    }
    closedir($handle); // We're not using it anymore
    $rand = array_rand($files);
    header('Location: '.$folder.$files[$rand]); // Voila!
    ?>


    so nun noch in der Index.html als Bild include/designs/xxxxx/images/banner/rotator.php einbauen und fertig.
    PS. kannst die rotator.php auch in eine css einbinden.

    Pfäde bitte deiner Umgebung anpassen.


    Zuletzt modifiziert von Revolution am 18.04.2010 - 02:25:42
    Kreativ, modern, Conversion und Usability optimiert
    individuelles Webdesign für ein optimales Erscheinungsbild
    404studios
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    dastiii Mitglied
    Registriert seit
    27.12.2005
    Beiträge
    2.354
    Beitragswertungen
    84 Beitragspunkte
    ZitatZitat geschrieben von Sonc

    ZitatZitat geschrieben von DaStIaC

    Naja das stimmt so aber auch nicht, du kannst schon einstellen, dass auch .html-Dateien vom PHP-Parser geparsed werden.

    Ok, man lernt eben nie aus. Hab hier eben was gefunden externer Link
    Danke, werde ich selber zwar nicht einsetzen aber trotzdem interessant lächeln


    hehe jau, bei irgendeinem Freehoster war das mal/ist das so eingestellt, hab aber keine Ahnung mehr welcher.

    Nochmal zum Thema: Statt den PHP-Code direkt reinzuschreiben, könnte man natürlich auch in der design.php, eine Variable an das Design übergeben, sprich genau so wie der {TITLE}.
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    GeCk0 Hall Of Fame
    Registriert seit
    01.05.2009
    Beiträge
    2.989
    Beitragswertungen
    96 Beitragspunkte
    die Ilch-Design-Klasse unterstützt auch "php-code"
    in wie fern die dafür ausreicht ist mir aber noch nicht bekannt

    immerhin sind auch sachen möglich wie

    {_if_{variable}=='wert'}Bei richtiger Bedingung{/_endif}



    Zuletzt modifiziert von GeCk0 am 18.04.2010 - 15:15:48
    Alle Module von mir sind nun unter php-gecko.de erreichbar
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    MVN050 Mitglied
    Registriert seit
    20.09.2008
    Beiträge
    1.273
    Beitragswertungen
    29 Beitragspunkte
    versuchs doch mal so

    ?php echo'
    <tr><td class="header" colspan="2" style="background-image: url(images/header_<  rand(0,2);  .png);">&nbsp;</td></tr>';?>
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    dastiii Mitglied
    Registriert seit
    27.12.2005
    Beiträge
    2.354
    Beitragswertungen
    84 Beitragspunkte
    ZitatZitat geschrieben von GeCk0

    die Ilch-Design-Klasse unterstützt auch "php-code"
    in wie fern die dafür ausreicht ist mir aber noch nicht bekannt

    immerhin sind auch sachen möglich wie

    {_if_{variable}=='wert'}Bei richtiger Bedingung{/_endif}



    Aber was hat das jetzt mit PHP Code zu tun, das ist schließlich so ziemlich das gleiche Prinzip wie mit BBCode und das ist doch auch kein HTML-Code. zunge
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Domme_09 Mitglied
    Registriert seit
    08.07.2008
    Beiträge
    267
    Beitragswertungen
    0 Beitragspunkte
    @MVN050: Das funktioniert so leider nicht :-(

    Habe die rotation.php mal mit deinem Code erstellt und nun folgende Ordnerstruktur:

    designs/xyz/images/banner/ <- hier liegen php und images
    und in der index.htm siehts so aus:

    <td class="header" colspan="2" style="background-image: url(images/banner/rotator.php">&nbsp;</td>

    Hat jemand ne Idee wo der Fehler liegt? Irgendwie funzt es nicht :-(
    www.bvbsupporters-ms.de
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    Warum machst Du keine box?
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    Domme_09 Mitglied
    Registriert seit
    08.07.2008
    Beiträge
    267
    Beitragswertungen
    0 Beitragspunkte
    joa auch machbar, aber so wäre das natürlich die schickste lösung!

    Der Fehler liegt glaube ich an den functions in includes/class/design! Die Function header(..) bei mir sieht ganz anders aus... Mal schaun, eventuell kann ich die von dem aktuellen ilch verwenden..
    www.bvbsupporters-ms.de
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    Revolution Hall Of Fame
    Registriert seit
    14.08.2006
    Beiträge
    1.688
    Beitragswertungen
    109 Beitragspunkte
    der quellcode hat nichts mit ilch zutun :-)
    hast du mal ein link zu deiner seite / testseite?

    header() ist eine php funktion.

    Zuletzt modifiziert von Revolution am 18.04.2010 - 23:01:15
    Kreativ, modern, Conversion und Usability optimiert
    individuelles Webdesign für ein optimales Erscheinungsbild
    404studios
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    Domme_09 Mitglied
    Registriert seit
    08.07.2008
    Beiträge
    267
    Beitragswertungen
    0 Beitragspunkte
    externer Link

    dachte die function header von ilch wäre da verwendet worden.. aber dann schau ich mir mal die php-funktion header an!

    Ist die rotator.php denn so richtig?
    edit:
    die rotator.php funzt! habe sie mal so aufgerufen! und das geht ohne probleme! nur irgendwie ist die falsch in der index.htm eingebunden bei mir!

    <td class="header" colspan="2" style="background-image: url(images/banner/rotator.php;">&nbsp;</td>


    Nur wie muss es aussehen?


    Zuletzt modifiziert von Domme_09 am 18.04.2010 - 23:27:44
    www.bvbsupporters-ms.de
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    Revolution Hall Of Fame
    Registriert seit
    14.08.2006
    Beiträge
    1.688
    Beitragswertungen
    109 Beitragspunkte
    mhh


    Zuletzt modifiziert von Revolution am 18.04.2010 - 23:35:44
    Kreativ, modern, Conversion und Usability optimiert
    individuelles Webdesign für ein optimales Erscheinungsbild
    404studios
    0 Mitglieder finden den Beitrag gut.
  16. #16
    User Pic
    Domme_09 Mitglied
    Registriert seit
    08.07.2008
    Beiträge
    267
    Beitragswertungen
    0 Beitragspunkte
    passiert leider nichts :-(
    Habs jetzt eingefügt...
    www.bvbsupporters-ms.de
    0 Mitglieder finden den Beitrag gut.
  17. #17
    User Pic
    Domme_09 Mitglied
    Registriert seit
    08.07.2008
    Beiträge
    267
    Beitragswertungen
    0 Beitragspunkte
    Hast du noch ne andere Idee? Ich bin total ratlos... Wenn ich die rotator.php so aufrufe, zeigt er mir zufällig eins der beiden Bilder an!

    Hier der direkte Link zur rotator.php:
    externer Link


    Edit: Vorübergehend mach ich mal wieder einen festen Header rein, damits nicht so kacke aussieht ;-)


    Zuletzt modifiziert von Domme_09 am 19.04.2010 - 00:01:07
    www.bvbsupporters-ms.de
    0 Mitglieder finden den Beitrag gut.
  18. #18
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Ist es denn ilch, dann einfach ne Box machen boxes/headerimg.php

    In der dann halt steht
    <?php echo 'images/header_'.rand(0,2).'.png'; ?>

    und dann in der index.htm
    <tr><td class="header" colspan="2" style="background-image: url({_boxes_headerimg});">&nbsp;</td></tr>


    Ansonsten ist die andere Methode natürlich auch einsetzbar, allerdings sollte die php wohl dann eher selbst das Bild ausgeben.

    <?php
    $imglink = 'images/header_'.rand(0,2).'.png';
    // Wir werden eine PDF Datei ausgeben
    header('Content-type: image/png');
    readfile($imglink);
    ?>


    (Den Pfad vielleicht ohne Pfad je nachdem wo du sie hinspeicherst)

    Zuletzt modifiziert von Mairu am 19.04.2010 - 00:24:21
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  19. #19
    User Pic
    Revolution Hall Of Fame
    Registriert seit
    14.08.2006
    Beiträge
    1.688
    Beitragswertungen
    109 Beitragspunkte
    .header {
    background-image:url("images/banner/rotator.php");
    background-repeat:no-repeat;
    height:163px;
    width:1005px;
    }


    so geht es bei mir.

    Screen
    gesperrtes Bild


    Zuletzt modifiziert von Revolution am 19.04.2010 - 00:36:30
    Kreativ, modern, Conversion und Usability optimiert
    individuelles Webdesign für ein optimales Erscheinungsbild
    404studios
    0 Mitglieder finden den Beitrag gut.
  20. #20
    User Pic
    Domme_09 Mitglied
    Registriert seit
    08.07.2008
    Beiträge
    267
    Beitragswertungen
    0 Beitragspunkte
    @Revolution: Jau Funzt :-) Danke an euch alle!!!!


    Zuletzt modifiziert von Domme_09 am 19.04.2010 - 19:46:16
    www.bvbsupporters-ms.de
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten