| Folgendes Problem ! |
2muerte
Pixelschubser
Beiträge: 13
|
Hi ich benutze folgendes script um ein randombild auf meiner Starseite anzeigen zu lassen.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34: | <?php
//##### Konfiguration ##################################################
//Verzeichnis ausgehend von Installationsverzeichnis der PHPKIT-Software
$pic_dir="bilder/bilder/Holland_2003"; //ohne abschließenden Slash
$picext=""; //Dateiendung für das Vorschaubild
$pic_config=1; //für feste Bildgröße 1,
//für automatische Ermittlung 0
//Bildgröße bei fester Bildgröße ($pic_config=1;)
$pic_width="135"; //Bildhöhe
$pic_height="110"; //Bildbreite
//######################################################################
$a=opendir($pic_dir);
while ($datei=readdir($a))
{
if (eregi(".jpg|.gif|.png",$datei) && !eregi($picext,$datei))
{
$pic=explode(".",$datei);
if (@file_exists("".$pic_dir."/".$pic[0]."".$picext.".".$pic[1])) {$pic_cache[]=$pic;}
unset($pic);
}
}
closedir($a);
if (is_array($pic_cache))
{
shuffle($pic_cache);
$pic=$pic_cache[0];
if ($pic_config==1) {$imagesize=" height=\"".$pic_height."\" width=\"".$pic_width."\"";}
else {$imagesize=@getimagesize("".$pic_dir."/".$pic[0]."".$picext.".".$pic[1].""); $imagesize=$imagesize[3];}
$boxlinks[]="<a target=\"_blank\" href=\"".$pic_dir."/".$pic[0].".".$pic[1]."\"><img border=\"0\" $imagesize alt=\"Zum vergößern anklicken\" src=\"".$pic_dir."/".$pic[0]."".$picext.".".$pic[1]."\" /></a>";
}
?> |
So nun mein Problem:
Wenn ich ein Vorschaubild(also das randombild) auf der seite anzeigen lassen will, dann muss ich normalerweise erstmal ein kleines bild davon haben(Zeile 5)
Mann kann dieses umgehen indem ich einfach nichts reinschreibe dann nimmt es immer das Originalbild.
Nur leider kommt dann folgender Fehler !
Warning: eregi(): REG_EMPTY in /home/muerte/public_html/navigation/navbox.picofmoment.php on line 18
Bitte um hilfe....
Danke an alle die helfen
Diese Nachricht wurde geändert von: languitar |
|  Profil
E-Mail
Editieren
Zitieren
|
Al Blank
Quasselstrippe
Beiträge: 368
|
Hi,
das schaut ja mords kompliziert aus für ein Random-Bild!
| Mann kann dieses umgehen indem ich einfach nichts reinschreibe |
Wenn Du eh kein Vorschaubild brauchst, dann könnte ja vielleicht das wesentlich kürzere Script was für Dich sein.
Einfach einsetzen wo das Bild sein soll. Wenn Du nichts veränderst, dann wird ein Random Image bei jedem Neuladen der Seite angezeigt.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10: | <script language="JavaScript">
var j, KW_ARI= new Array()
KW_ARI[KW_ARI.length]='img/bla1.gif';
KW_ARI[KW_ARI.length]='img/bla2.gif';
KW_ARI[KW_ARI.length]='img/bla3.gif';
// hier Deine weiteren Bilder rein
j=parseInt(Math.random()*KW_ARI.length);
j=(isNaN(j))?0:j;
document.write("<img src='"+KW_ARI[j]+"'>");
</script> |
Wenn das nicht das richtige ist, dann müßtest Du vielleicht genauer erklären wie dein Script genau arbeiten soll.
Diese Nachricht wurde geändert von: Al Blank |
|  Profil
Editieren
Zitieren
|
2muerte
Pixelschubser
Beiträge: 13
|
Also:
Ich habe einen Ordner mit VIELEN bildern drinn, daraus soll sich das modul ein randombild raussuchen und es auf meiner seite zeigen !
|
|  Profil
E-Mail
Editieren
Zitieren
|
languitar
Foren-Team
Beiträge: 2795
|
|
|  Profil
E-Mail
Website
Editieren
Zitieren
|
2muerte
Pixelschubser
Beiträge: 13
|
leider kommt dann auch ein fehler !
Wenn ich den Code benutze !
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18: | <?php
$verzeichnis = "bilder/bilder/Kiel/";
$array_types = array('jpg' , 'png');
$dir = opendir("$verzeichnis");
while (($file = readdir($dir)) != false) {
if (preg_match("/^index/", $file)) continue;
if (preg_match("/..?$/", $file)) continue;
foreach($array_types as $typ) {
if (preg_match("/.".$typ."$/i", $file)) $dateien[] = $file;
};
};
$zufall = array_rand($dateien);
$bild = "$dateien[$zufall]";
$size = @getimagesize("$verzeichnis"."$bild");
$breite = $size[0];
$hoehe = $size[1];
echo "<img src=\"$verzeichnis$bild\" width=\"$breite\" height=\"$hoehe\" border=\"0\">";
?> |
Warning: array_rand(): First argument has to be an array in /home/muerte/public_html/navigation/navbox.test.php on line 12
Diese Nachricht wurde geändert von: languitar |
|  Profil
E-Mail
Editieren
Zitieren
|
languitar
Foren-Team
Beiträge: 2795
|
Dann ist dein Verzeichnis wohl leer. Überprüf mal die Pfadangaben und beachte, dass wenn du die Datei inkludierst, du von der Datei mit dem include-Befehl ausgehen musst!
---
Take a look here!
Lichtblick - Einblick - Ausblick
|
|  Profil
E-Mail
Website
Editieren
Zitieren
|
2muerte
Pixelschubser
Beiträge: 13
|
ne geht trotzdem nicht. alsoich habe das verzeichnis
bilder/bilder/Kiel/
da sind ungefähr 40 Bilder drinn also muesste das doch gehen !
Mein quellcode sieht so aus !
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18: | <?php
$verzeichnis = "bilder/bilder/Kiel/";
$array_types = array('jpg' , 'png');
$dir = opendir("$verzeichnis");
while (($file = readdir($dir)) != false) {
if (preg_match("/^index/", $file)) continue;
if (preg_match("/..?$/", $file)) continue;
foreach($array_types as $typ) {
if (preg_match("/.".$typ."$/i", $file)) $dateien[] = $file;
};
};
$zufall = array_rand($dateien);
$bild = "$dateien[$zufall]";
$size = @getimagesize("$verzeichnis"."$bild");
$breite = $size[0];
$hoehe = $size[1];
echo "<img src=\"$verzeichnis$bild\" width=\"$breite\" height=\"$hoehe\" border=\"0\">";
?> |
und die bilder haben die Endung *.jpg
Also was nun ?
Diese Nachricht wurde geändert von: languitar |
|  Profil
E-Mail
Editieren
Zitieren
|
languitar
Foren-Team
Beiträge: 2795
|
In welchem verzeichnis liegt denn die datei, von der du das aufrufst?
btw: Benutz doch mal den Code-Tag!
---
Take a look here!
Lichtblick - Einblick - Ausblick
|
|  Profil
E-Mail
Website
Editieren
Zitieren
|
2muerte
Pixelschubser
Beiträge: 13
|
also :
Diese datei mit dem script liegt in
navigation/
meine bilder sind in
bilder/bilder/Kiel/
Das ist alles oder ?
|
|  Profil
E-Mail
Editieren
Zitieren
|
languitar
Foren-Team
Beiträge: 2795
|
Ja, da is der haken. wie soll der denn so in das Bilderverzeichnis kommen? Der geht doch immer von dem Verzeichnis aus, in dem die Datei liegt. Probier mal als Verzeichnis 1: | $verzeichnis = $_SERVER['DOCUMENT_ROOT'].'/bilder/bilder/kiel/; |
---
Take a look here!
Lichtblick - Einblick - Ausblick
|
|  Profil
E-Mail
Website
Editieren
Zitieren
|