Seite 2 von 3

Re: Bildergalerie - Thumbs zufällig auslesen

Verfasst: 06.02.2013 14:59
von NicoM
Bitte lasst mich nojch einmal auf mein Problem zurückkommen, zu dem ich immer noch keine Löoung gefunden habe. Es ist zum Verzweifeln ...

Mit dem witer oben angegebenen Code möchte ich einige Bilder aus einem Verzeichnis auslesen und darstellen.
Das Ergebnis könnt ihr euch hier ansehen:
http://www.seven-ig.de/phpBB3/gallery/i ... random.php
Wie ihr seht, werden nicht die Bilder selbst, sondern an deren Stelle kleine Leere Icons dargestellt.

Und dabei sind die Bilder tatsächlich im Verzeichnis vorhanden. Ich kann jedes Bild einzeln über seine URL aufrufen.

Was ich isher überprüft habe:

1. Das Verzeichnis ist mit 755 gechmoded. Darin liegt also keine Beschränkung
2. Per htaccess gibt es keine Einschränkungen.
3. Den Pfad habe ich vom Server Root /home aus aufwärts gelegt.

Was bitte könnte noch falsch sein in meiner Vorgehensweise oder im Code?

Herzlichen Dank im voraus,
NicoM

Re: Bildergalerie - Thumbs zufällig auslesen

Verfasst: 06.02.2013 15:44
von BNa
> Firefox > rechte Maustaste > Grafik Info
> http://www.seven-ig.de/home/www/sevenig-new/phpBB3/gallery/images/medium/7b2fe72820e87d075c1cc987f3ce98e8.jpg

Fällt Dir was auf?

Über welchen Pfad kannst Du Im Gegensatz zum hier Gezeigten denn die Grafiken aufrufen?

Richtig, der hier. Nun vergleich mal.

http://www.seven-ig.de/phpBB3/gallery/images/medium/7b2fe72820e87d075c1cc987f3ce98e8.jpg

Also gilt wieder viewtopic.php?f=86&t=226316#p1293911
BNa hat geschrieben:Falscher Pfad
Daher zeig mal Deine random.php, dann wirds einfach
https://www.phpbb.de/support/pastebin.php

Re: Bildergalerie - Thumbs zufällig auslesen

Verfasst: 06.02.2013 16:32
von NicoM
Danke BNA.

Hier der Inhalt meiner random.php:

Code: Alles auswählen

<? 
$dirName="/home/www/sevenig-new/phpBB3/gallery/images/medium"; 
$bilderzahl=3; 
$i=0; 
$a=0; 
$d = dir($dirName); 
$pic= array(); 
while($entry = $d->read()) 
{ 
 if ($entry != "." && $entry != ".." && !is_dir($entry)) 
 { 
 $bild[$i]=$entry; 
 $i++; 
 } 
} 
$d->close(); 
if ($bilderzahl<=$i) 
{ 
echo "<table><tr>"; 
srand((double)microtime()*1000000); 
while($a<$bilderzahl) 
{ 
$jetzt=$bild[rand(0,$i-1)]; 
if(!in_array($jetzt,$pic)) 
{ 
echo "<td><img src=\"".$dirName."/".$jetzt."\"></td>";
$pic[$a]=$jetzt; 
$a++; 
} 
} 
echo "</table></tr>"; 
} 
else 
{ 
echo "Zu wenig Bilder vorhanden!!!"; 
} 
?>

Re: Bildergalerie - Thumbs zufällig auslesen

Verfasst: 06.02.2013 16:39
von BNa
Erstmal ist Dein Code immer noch grauenhaft (ist ja immer noch der alte).
Und der hier immer noch besser, einfacher usw. (keine Ahnung, warum Du den simplen Pfad nicht anpassen kannst):
viewtopic.php?f=86&t=226316#p1293911

Aber egal, ist ja nicht mein Forum.

Entferne das hier

/home/www/sevenig-new

Re: Bildergalerie - Thumbs zufällig auslesen

Verfasst: 06.02.2013 16:47
von NicoM
Okok, ans Vrauenhafte nache ich koch später.

Jetzt erstmal das Wichtige: der Pfad.
Wenn ich das streiche, was Du vorschlägst, passiert garnichts mehr :-o

Re: Bildergalerie - Thumbs zufällig auslesen

Verfasst: 06.02.2013 16:49
von BNa
Kann garnicht sein, da Du nur den Pfad geändert hast.
Den richtigen utf8 fähigen Editor genommen?
Verlinke das mal was Du jetzt hast.

Normalerweise arbeitet man ja auch mit $phpbb_root_path und den für phpbb3 erstellten seiten
https://wiki.phpbb.com/Deutsch:Vorlage_ ... ene_Seiten

Re: Bildergalerie - Thumbs zufällig auslesen

Verfasst: 06.02.2013 17:08
von NicoM
So sieht die random.php jetzt aus:

Code: Alles auswählen

<? 
$dirName="/phpBB3/gallery/images/medium"; 
$bilderzahl=3; 
$i=0; 
$a=0; 
$d = dir($dirName); 
$pic= array(); 
while($entry = $d->read()) 
{ 
 if ($entry != "." && $entry != ".." && !is_dir($entry)) 
 { 
 $bild[$i]=$entry; 
 $i++; 
 } 
} 
$d->close(); 
if ($bilderzahl<=$i) 
{ 
echo "<table><tr>"; 
srand((double)microtime()*1000000); 
while($a<$bilderzahl) 
{ 
$jetzt=$bild[rand(0,$i-1)]; 
if(!in_array($jetzt,$pic)) 
{ 
echo "<td><img src=\"".$dirName."/".$jetzt."\"></td>";
$pic[$a]=$jetzt; 
$a++; 
} 
} 
echo "</table></tr>"; 
} 
else 
{ 
echo "Zu wenig Bilder vorhanden!!!"; 
} 
?>

Re: Bildergalerie - Thumbs zufällig auslesen

Verfasst: 06.02.2013 17:09
von BNa
Die liegt im gleichen verzeichnis wie die bilder?

dann probier mal das:

Code: Alles auswählen

$bilder   = glob("{*.jpg,*.png,*.gif}", GLOB_BRACE);
$bild     = array_rand($bilder, 3);
foreach ($bild as $zufallsbild)
{
    echo '<img src="' .$bilder[$zufallsbild]. '"  alt="" /><br />';
}
deine datei wurde auch mit notepad++ bearbeitet (utf8 ohne bom)?

Re: Bildergalerie - Thumbs zufällig auslesen

Verfasst: 06.02.2013 17:47
von NicoM
Hallo BNa,

ein Wunder, herzlichen Dank!

Mit dem Code, den Du mir vorgeschlagen hast, klappt alles wunderbar.
Siehe auch hier:

http://www.seven-ig.de/phpBB3/gallery/i ... om_new.php

Ich bin dir ewig zu Dank verpflichtet! Danke für Deine Geduld,

Re: Bildergalerie - Thumbs zufällig auslesen

Verfasst: 06.02.2013 20:34
von BNa
Das jetzt noch etwas formatieren, simpel mal als Beispiel

Code: Alles auswählen

    echo '<img src="' .$bilder[$zufallsbild]. '" style="width:400px; height:auto;" alt="" /><br /><br />';
Dann sind die Bilder schonmal gleich breit (sofern mindestens 400px). Ist natürlich jede andere Formatierung möglich.