Zufallsbild

D

dj-toto

Guest
Habe mir von hier das script zufalssbild genommen

funktioniert soweit

nur eins habe ich dazu

wie kriege ich die Bilder in einer Größe

da alle bilder unterschiedlich groß sind möchte ich das die bilder alle gleich groß erscheinen

nur wo muss ich das nageben im script ? die breite und höhe ?

hier mal das script :

CODE
<?php
$vn = "./bilder";
$html_vn = "bilder/";

$barray = array(1,2,3,4,5);
$verzeichnis = opendir($vn);
while($file = readdir($verzeichnis)) {
$s = @getimagesize($vn."/".$file);
if(in_array($s[2], $barray))
$auswahl[] = $file;
}
mt_srand((double)microtime()*1000000);
$number = mt_rand(0,count($auswahl)-1);
echo "<img src='".$html_vn.$auswahl[$number]."'>";
?>

 
Die Frage ist wie du es machen möchtest. Die einfachste, aber auch unschöner, Art ist in <img> die Höhe und Breite anzugeben (z.B. <img src="bild.jpg" height="100" width="100">) Aber dann werden die Bilder zum Teil verzerrt dargestellt. Für die eleganter Lösung musst du die Bilder per PHP und einer Grafiklibary in der Grösse anpassen.

Grüsse
Driver
 
also muss ich jedes bild was im Verzeichnis ist angeben damit es mit diesem code funktioniert ?

CODE <img src="bild.jpg" height="100" width="100">



könnte ich das denn so machen ?


CODE <img src='"." height="100" width="100">


damit er alle bilder in dieser grösse anzeigt ?

wäre am einfachsten, ich sehs ja dann ob die bilder verpixeln

habe keine lust jedes bild anzu passen det iss zu viel arbeit *g
 
Angenommen alle Bilder sind ungefähr 100 mal 100 Pixel gross:

Dann kanst du einfach die letzte Zeil durch folgendes Ersetzen:

echo "<img src='".$html_vn.$auswahl[$number]."' width=\"100\" height=\"100\">";


Aber alle Bilder die nicht Qudratisch sind, werden auch verzehrt. Also ich würde diese Lösung sein lassen. In Grafik Programmen gibt es meistens Batchverarbeitungen (je nach dem heissen sie auch Stapelverarbeitung), um mehere Fotos zu gleich in der Grösse anzupassen.

Grüsse
Driver
 
QUOTE (driver @ Sa 17.2.2007, 19:07) Aber alle Bilder die nicht Qudratisch sind, werden auch verzehrt. Also ich würde diese Lösung sein lassen. In Grafik Programmen gibt es meistens Batchverarbeitungen (je nach dem heissen sie auch Stapelverarbeitung), um mehere Fotos zu gleich in der Grösse anzupassen.

Gebe nur die höhe aber nicht die breite an und dann sind die Bilder nicht verzerrt.
 
Danke euch es funktioniert soweit

aber eins hab ich noch *g


möchte das man wenn man auf das bild klickt das dan das nächste bild angezeigt wird
wie wäre da nen link zu ? mit einfaden z.b. ?

Gruß

Toto
 
zu dem Zufallsbild nochmal

alles funktioniert soweit es refresht auch .

aber ich möchte gerne wenn man auf das Bild klickt das dann das nächste angezeigt wird der übergang sollte aber weich laufen (Faden) ist sowas möglich ?

Gruß

Toto
 
bei zufallsbildern ist das 'nächste' doch auch zufällig? dann script einfach neu laden.benutze zufallsbilder auch auf meiner startseite. übereinander, 5 stück. sind alle gleich breit gespeichert, aber mit unterschiedlicher höhe. und in dr gallery stelle ich sie quadratisch dar, die zufälligen thumbnails, sind sowieso so klein, das passt schon.
 
hi

nimm flash dafür oder eine andere variante wäre iframes.
im iframe würde ich dann ne seite so bauen
CODE
<head>
<script language="javascript">
var oc=0;

function fadeIn() {
image.style.filter="Alpha(opacity="+oc+", finishopacity=0, style=2)"
if(oc!=100) setTimeout('oc++;fadeIn()',40);
else setTimeout('fadeOut()',5000);
}

function fadeOut() {
image.style.filter="Alpha(opacity="+oc+", finishopacity=0, style=2)"
if(oc!=0) setTimeout('oc--;fadeOut()',40);
else setTimeout('fadeIn()',1000);
}
</script>
</head>

<body onload="fadeIn()">
<p id="image" style="width:x;filter:Alpha(opacity=0,finishopacity=0,style=2)">
<img src="zufallsbild.jpg_oder_gif" width="x" height="y">
</p>
</body>




hilft das?

grüsse
jeliel
 
QUOTE <p id="image" style="width:x;filter:Alpha


ist das richtig das dort der pfad rein kommt wo die bilder liegen ?


QUOTE <img src="zufallsbild.jpg_oder_gif" width="x" height="y">


oder dort rein ?

 
QUOTE (jeliel @ Mi 21.2.2007, 13:45) hi

nimm flash dafür oder eine andere variante wäre iframes.
im iframe würde ich dann ne seite so bauen

CODE
 <head>
   <script language="javascript">
     var oc=0;

     function fadeIn() {
       image.style.filter="Alpha(opacity="+oc+", finishopacity=0, style=2)"
       if(oc!=100) setTimeout('oc++;fadeIn()',40);
       else setTimeout('fadeOut()',5000);
     }

     function fadeOut() {
       image.style.filter="Alpha(opacity="+oc+", finishopacity=0, style=2)"
       if(oc!=0) setTimeout('oc--;fadeOut()',40);
       else setTimeout('fadeIn()',1000);
     }
   </script>
 </head>

 <body onload="fadeIn()">
   <p id="image" style="width:x;filter:Alpha(opacity=0,finishopacity=0,style=2)">
     <img src="zufallsbild.jpg_oder_gif" width="x" height="y">
   </p>
 </body>




hilft das?

grüsse
jeliel

hab den nen auto refresh drinne aktualisieren tut es sich ja

aber es soll halt faden immo isses so abgehakt .


 
<meta http-equiv="Page-Exit" content="blendTrans(Duration=0.6)">
<meta http-equiv="Page-Enter" content="blendTrans(Duration=0.6)">

funktioniert allerdings nur mit dem msie.
 
Page-Enter bringt den effekt beim laden der seite, Page-Exit bringt den effekt beim verlassen der seite. blendTrans(Duration=0.6) definiert die geschwindigkeit, der wert darf verändert werden. für einen optimalen übergang sind beide meta tags nötig.
 
Ich danke dir

Funktioniert gut so reichts mir.

Gruß

Toto
 
Zurück
Oben