Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 15. April 2011 21:43

GoGo
kennt CMS/ms
Registriert: 20. Januar 2011
Beiträge: 134

Zufallsbild mit image_rotator

Hi,
ich bin am verzweiflen  mad

Ich versuche es mittels image_rotator ein Zufallsbild in eine Unterseite einzubauen.
Für die Bilder habe ich einen Ordner erstellt. Leider es werden nur bilder aus dem Hauptverzeichnis (uploads/images) angezeigt.
Den Tag habe wie wie folgt eingefügt:

{image_rotator folder='uploads/images/zufallsbild'}

Ich habe Version 1.9.3 lokal auf Xampp


Gibt es eine alternative zu dem image_rotator-Tag?
Ich möchte, dass bei Laden der Seite ein anderes Bild angezeigt wird, es soll nicht automatisch wechseln.
Hat jemand eine Idee?

Offline

#2 16. April 2011 22:07

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.935
Webseite

Re: Zufallsbild mit image_rotator

Ich habe mir mal folgendes UDT geschrieben:

if ($params["pfad"] == "") echo "kein Bildpfad ausgefüllt.";
else {
    if ($params["anzahl"] == "") $params["anzahl"] = 2;
    if (substr($params["pfad"],0,1) != "/") $params["pfad"] = "/".$params["pfad"];
    if (substr($params["pfad"],-1) != "/")   $params["pfad"] .= "/";
    
    $bilderdir = $_SERVER["DOCUMENT_ROOT"].$params["pfad"];

    $extList = array();
    $extList['gif'] = "image/gif";
    $extList['jpg'] = "image/jpeg";
    $extList['jpeg'] = "image/jpeg";
    $extList['png'] = "image/png";

    $img = null;
    
    // Dateien aus dem bilderdir in ein Array lesen
    
    $bilderfileList = array();
    $handle2 = opendir($bilderdir);
    while ( false !== ( $file2 = readdir($handle2) ) )
    {
        $file_info2 = pathinfo($file2);
        if (isset( $extList[ strtolower( $file_info2['extension'] ) ] ) and strpos($file2,"humb_") == 0 and strpos($file_info2['filename'],"_thumb") != False )
        {
            $bilderfileList[] = $file2;
        }
    }
    closedir($handle2);

    if (count($bilderfileList) == 0)
        echo "Der angegebene Ordner ".$params["pfad"]." enthält keine Bilder";
    else {    
        
        // Reihenfolge der Arrays zufällig mischen
                
        shuffle($bilderfileList);
                
        for ($i=0;$i<$params["anzahl"];++$i) {
            
            $url = str_replace("_thumb","",$params["pfad"].$bilderfileList[$i]);
            $pathinfo = pathinfo($url);
            $titel = str_replace("_"," ",$pathinfo["filename"]);
            $groesse=getimagesize($bilderdir.$bilderfileList[$i]);
            echo "<p><div class='captionborder' style='width:".$groesse[0]."px'><a href=\"".$url."\"><img src=\"".$params["pfad"].$bilderfileList[$i]."\"  alt=\"".$titel."\" /></a></div></p>\r\n";
        }
    }    
}        

Das UDT ist auf imagecaptions ausgerichtet, kann aber mit ein wenig PHP Kentnissen problemlos angepasst werden. Es liest alle Bilder aus einem Verzeichnis und gibt die gewünschte Anzahl aus. Die Reihenfolge wird jedesmal zufällig erzeugt.

Aufruf:

{udtname anzahl="1" pfad="/uploads/images/zufallsbilder}

[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#3 16. April 2011 09:23

owr_web
Server-Pate
Registriert: 16. Dezember 2010
Beiträge: 543

Re: Zufallsbild mit image_rotator

Variante die ich benutze, wenn jedes Bild gleich groß ist mit direkter fixer Festlegung des Ordners und der Bildbeschreibung:

[== UDT ==]
$dir = "uploads/DIRECTORY";
$files = array();
if ($handle = opendir($dir)) {
   while (false !== ($file = readdir($handle))) {
       if($file != '.' && $file != '..')
      $files[] = $file;
   }
   closedir($handle);
}
if( ($c = sizeof($files)) > 0) {
    srand ((double)microtime()*1000000);
    $i = rand(0,($c-1));
    echo '<img src="'.$dir.'/'.$files[$i].'" width="???px" height="???px" alt="BEZECIHNUNG" />';
//        echo $dir.'/'.$files[$i];
}

Info zu den letzten beiden Zeilen: Entweder wird das Bild mit kompletten Code ausgegeben oder (hier auskommentiert) einfach der Dateiname inkl. dir

DIRECTORY = das jeweilige Verzeichnis bzw. bis zum jeweiligen Unterverzeichnis
BEZEICHNUNG = die allgemeine Bildbezeichnung, die dann für alle gleich ist
??? = Höhe/Breite

Beitrag geändert von owr_web (16. April 2011 09:24)

Offline

#4 16. April 2011 16:27

Connie
Server-Pate
Ort: Gribow
Registriert: 12. Dezember 2010
Beiträge: 216
Webseite

Re: Zufallsbild mit image_rotator

also ich hab das mal so gemacht:

1) alle Dateien in einen Ordner
2) in den gleichen Ordner ein rotator.php gelegt (eines von den üblichen Scripten, die man überall findet)
3) im Template wie ein Image eingebunden, aber bei "src" statt des Dateinamens "rotator.php" angegeben

das war extrem banal und funktioniert gut

Das rotator.zip ist zu finden auf www.webdeerns.de/downloads/rotator.zip

Und eingebunden habe ich es so:

[== HTML ==]
<img src="/uploads/bilderverzeichnis/rotator.php" alt="wie der Zufall es will" title="irgendwas" />

sowas von banal, da braucht man sich gar nicht groß den Kopf zerbrechen

PS: Ist bei Euch auch der Server heute so lahm?`Dauert ja ewig, bis eine  Forum-Seite heute geladen wird ;=(

Beitrag geändert von Connie (16. April 2011 16:33)

Offline

#5 16. April 2011 21:43

GoGo
kennt CMS/ms
Registriert: 20. Januar 2011
Beiträge: 134

Re: Zufallsbild mit image_rotator

Leute! Danke!
Jetzt habe ich Qual der Wahl lol

Offline

#6 08. Mai 2011 23:47

GoGo
kennt CMS/ms
Registriert: 20. Januar 2011
Beiträge: 134

Re: Zufallsbild mit image_rotator

Hi, ich habe mit dem rotatop.php versucht.

Pustekuchen!  mad Es funktioniert nicht!

Habe über die Template eigebunden, angezeigt wird nur Alt-Text und Titel, keine Bilder.
Die einzige Stelle, wo etwas konfiguriert werden muss, ist der Folder ($folder = '/uploads/images/bilder/';)
Ich würde sagen, einfacher geht nicht. Trotzdem funktioniert nicht.

Ich habe die VErsion 1.9.4.1.

Eine Idee? Wäre mit js nicht einfacher?

Offline

#7 08. Mai 2011 09:13

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.935
Webseite

Re: Zufallsbild mit image_rotator

GoGo schrieb:

Hi, ich habe mit dem rotatop.php versucht.

Pustekuchen!  mad Es funktioniert nicht!

Habe über die Template eigebunden, angezeigt wird nur Alt-Text und Titel, keine Bilder.
Die einzige Stelle, wo etwas konfiguriert werden muss, ist der Folder ($folder = '/uploads/images/bilder/';)
Ich würde sagen, einfacher geht nicht. Trotzdem funktioniert nicht.

Wie hast du ihn genau eingebunden?


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#8 08. Mai 2011 09:47

GoGo
kennt CMS/ms
Registriert: 20. Januar 2011
Beiträge: 134

Re: Zufallsbild mit image_rotator

[== html ==]
<div id="header"> 
<img  style="margin:10px;"   src="/uploads/images/bilder/rotator.php"  alt="wie der Zufall es will" title="irgendwas"/>
</div>

Offline

#9 09. Mai 2011 06:26

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: Zufallsbild mit image_rotator

GoGo schrieb:

Jetzt habe ich Qual der Wahl lol

Mit der anderen Auswahl bist du nicht zurecht gekommen?

Offline

#10 09. Mai 2011 06:35

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.935
Webseite

Re: Zufallsbild mit image_rotator

GoGo schrieb:
[== html ==]
<div id="header"> 
<img  style="margin:10px;"   src="/uploads/images/bilder/rotator.php"  alt="wie der Zufall es will" title="irgendwas"/>
</div>

Müsste eigentlich funktionieren. Hast du den Link auch direkt aufgerufen?


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#11 09. Mai 2011 13:55

GoGo
kennt CMS/ms
Registriert: 20. Januar 2011
Beiträge: 134

Re: Zufallsbild mit image_rotator

Ja, wenn ich den Link direkt aufrufe bekomme ich den Fehler 403.

Es hat sich in soweit erledigt, dass ich es mit Javascript gemacht gabe.
Trotzdem danke!

Offline

#12 09. Mai 2011 18:06

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Zufallsbild mit image_rotator

403 = forbidden, oder?
Kann es sein, dass Du in einer .htaccess Datei den Zugriff auf .php-Dateien im Uploads-Verzeichnis selber verboten hast?
Wenn ja, dann müsstest Du für die Datei rotator.php im image-Verzeichnis eine Ausnahme hinzufügen.
(siehe z.B. auch hier: http://www.cmsmadesimple.de/forum/viewtopic.php?id=765)


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