Willekeurig plaatje

Door Arend a, 24 jaar geleden, 8.898x bekeken

Dit script leest het aantal files in de directory, gaat er vanuit dat het plaatjes zijn. Hij haalt vervolgens een file eruit en echo'ed deze.

Zie comments in script.

Ik heb deze gebruikt op de 'intro' pagina van vorago.nl

Voorbeeld: http://www.vorago.nl

Gesponsorde koppelingen

PHP script bestanden

  1. willekeurig-plaatje

 

Er zijn 28 reacties op 'Willekeurig plaatje'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
PHP erik
PHP erik
24 jaar geleden
 
0 +1 -0 -1
tsjah... is dit niet een beetje hetzelfde als banner rotation??
Johan
Johan
24 jaar geleden
 
0 +1 -0 -1
t kan ook gewoon als een soort teller:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<? $fp = fopen($teller, "r");
$data = fread($fp, 6);
fclose($fp);

$data++;

echo "<img src='/plaatjes/$i.jpg' border='0'>";

$fr = fopen($teller, "w");
$data = fwrite($fr, $data);
fclose($fr);

?>
Johan
Johan
24 jaar geleden
 
0 +1 -0 -1
oeps, inplaats van <img src='/plaatjes/$i.jpg' border='0'> maaken:

<img src='/plaatjes/$data.jpg' border='0'>


24 jaar geleden
 
0 +1 -0 -1
je kan tog ook:
$plaatje[1] = <img src=\"plaatje1.jpg\">
$plaatje[2] = <img src=\"plaatje2.jpg\">
$plaatje[3] = <img src=\"plaatje3.jpg\">
echo("$plaatje");
Arend a
Arend a
24 jaar geleden
 
0 +1 -0 -1
Mja, het is niet mn bedoeling een banner te rotaten, ik denk dat je die niet perse random wil doen. Ik vond het ook gewoon een leuk voorbeeld over hoe je een lijst bestanden uit een directory plukt.

Paul: de lol van dit script is dat als iemand een plaatje toevoegd, hij gewoon uit de dir een willekeurig plaatje trekt. Dus niet dat je het plaatje eerst in je php script moet deponeren voordat hij meegerekend wordt. Ik weet niet dat als je een $array als scalar gebruikt of hij dan random een slice eruit pikt, dat kan misschien wel, dan is dat $random geval overbodig.


24 jaar geleden
 
0 +1 -0 -1
Paul, het probleem in jouw script is volgens mij dat je de " en de ; vergeten bent.

$plaatje[1] = "<img src=\"plaatje1.jpg\">";
$plaatje[2] = "<img src=\"plaatje2.jpg\">";
enz.


24 jaar geleden
 
0 +1 -0 -1
Warning: opendir(): open_basedir restriction in effect. File(/images/rotate_home) is not within the allowed path(s): (.) in /mnt/storage1/k/kl/kleefbaarnederland.nl/html/picture_rotate.php on line 9

Warning: opendir(/images/rotate_home): failed to open dir: Operation not permitted in /mnt/storage1/k/kl/kleefbaarnederland.nl/html/picture_rotate.php on line 9

Warning: readdir(): supplied argument is not a valid Directory resource in /mnt/storage1/k/kl/kleefbaarnederland.nl/html/picture_rotate.php on line 11

Wat doe ik verkeerd??


24 jaar geleden
 
0 +1 -0 -1
Warning: opendir(): open_basedir restriction in effect. File(/images/rotate_home) is not within the allowed path(s): (.) in /mnt/storage1/k/kl/kleefbaarnederland.nl/html/picture_rotate.php on line 9

Warning: opendir(/images/rotate_home): failed to open dir: Operation not permitted in /mnt/storage1/k/kl/kleefbaarnederland.nl/html/picture_rotate.php on line 9

Warning: readdir(): supplied argument is not a valid Directory resource in /mnt/storage1/k/kl/kleefbaarnederland.nl/html/picture_rotate.php on line 11

Wat doe ik verkeerd??
John Zondag
John Zondag
23 jaar geleden
 
0 +1 -0 -1
Dit is leuk, ik heb ook een soortgelijk script gebruikt om bij elk bezoek een willekeurig plaatje te tonen. Heel nuttig.

Wist je overigens dat er ook een array_rand bestaat, die een willekeurig nummer uit een array geeft? Hier is het, gewoon voor de lol:

srand ((float) microtime() * 10000000);
$random = array_rand($files);
echo "<img src=\"$url/$files[$random]\" border=\"0\">";


23 jaar geleden
 
0 +1 -0 -1
zou iemand antw kunnen geven op Marco zijn probleem want dat heb ik namelijk ook met dat open_basedit restriction


23 jaar geleden
 
0 +1 -0 -1
Hoi, ik wil graag tekst ipv een plaatje laten verschijnen (spreuk van de dag). Ik heb nu de volgende code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php

$dir
= '/home/hoekst/public_html/txt/';
# Absolute pad naar de plaatjes directory.

$url = 'http://www.de-hoeksteen.net/txt';
# Geen laatste '/'!

$handle = opendir($dir);

while (false !== ($file = readdir($handle))) {
 if (!is_dir($file)) {
        # dit voorkomt dat directories of '.' en '..' in de array komen
        $files[] = $file;
 }
}


$random = rand(0,(count($files)-1));
# Kies een willekeurig getal tussen de 0 en het aantal plaatjes
# omdat de nummering in een array bij 0 begint, en count() vanaf 1 gaat
# halen we er een vanaf (als er 10 plaatjes zijn, is plaatje 10 nummer 9 in de array)


echo "<\"$url/$files[$random]\">"
?>


Hij geeft nu de url weer, hoe laat ik 'm de bestandsinhoud weergeven? BVD Jaap


23 jaar geleden
 
0 +1 -0 -1
Url is ondertussen www.de-hoeksteen.net/probeersels/text geworden.


23 jaar geleden
 
0 +1 -0 -1
Hoi,

Ik zou dit script graag als achtergrond in mijn tabel willen hebben...
Mijn code die ik nu gebruik is :

<TD width=300 background="../images-300_100/stenen.png" >logo</td>

Maar hoe pas ik in plaats van die .png dat script toe ?

Alvast bedankt,

Floris.
Legolas
Legolas
23 jaar geleden
 
0 +1 -0 -1
de regel:
echo "<img src=\"$url/$files[$random]\" border=\"0\">";
moet:
echo "<TD width=300 background=\"$url/$files[$random]\">logo</td>";
worden


23 jaar geleden
 
0 +1 -0 -1
Dank je !
Want ik kwam er echt weer eens niet uit....

Greetzzz,
Floris.


23 jaar geleden
 
0 +1 -0 -1
Hoi,

Ik heb een klein probleempje met het script..
Af en toe wil die een plaatje niet laden.. en verschijnt het bekende rode kruisje i.p.v. de foto.

Even de feiten :
Ik heb nu 1 foto in de map staan.
Ik gebruik dit script 2 maal in dezelfde pagina.

kan dat de oorzaak zijn ?

Groeten,
Floris.
B a s
B a s
23 jaar geleden
 
0 +1 -0 -1
kruisje betekent foto bestaat niet, dus verkeerde bestandsnaam opgegeven ofzo..


23 jaar geleden
 
0 +1 -0 -1
Nope..

Bestand bestaat wel.. en laat ie ook regelmatig zien.
Niet bestaande foto\'s zou ie trouwens evengoed niet kunnen laten zien omdat die die volgens mij ook niet kan indexeren..

Groeten,
Floris.
Samanta
Samanta
23 jaar geleden
 
0 +1 -0 -1
wie heeft dit op zijn site draaien?
B a s
B a s
23 jaar geleden
 
0 +1 -0 -1
scroll naar boven en kijk bij: voorbeeld..
Legolas
Legolas
23 jaar geleden
 
0 +1 -0 -1
als ie kruisjes toont klopt de opgegeven url waarschijnlijk niet
Samanta
Samanta
23 jaar geleden
 
0 +1 -0 -1
Tja, daar had ik dus gekeken maar daar staat nu een flash site op
Maar ik ben eruit wat ik verkeerd deed. ik zat nog html te denken.

ik had namelijk als adres: /pictures

Opgegeven maar dat pakt hij niet.

Sam


23 jaar geleden
 
0 +1 -0 -1
Kun je dit script ook bewerken zodat het een willekeurige html pagina er uit haalt?
Legolas
Legolas
23 jaar geleden
 
0 +1 -0 -1
tuurlijk.


23 jaar geleden
 
0 +1 -0 -1
Hoe kun je een aantal plaatjes laten zien die in een map geupload zijn?
Dus in de map uploads zitten 5 jpegjes bijvoorbeeld. Hoe kan ik die op een site laten weergeven?


23 jaar geleden
 
0 +1 -0 -1
@Philip: Door gewoon elk item in van het array weer te geven?
Kees van dijk
kees van dijk
23 jaar geleden
 
0 +1 -0 -1
Hey,

waarom krijg ik deze fout?

Warning: opendir(/home/plaatjes): failed to open dir: No such file or directory in /home/Keeszie/domains/huisturf.nl/public_html/plaatjes/Plaatjes Rotator.php on line 9

Warning: readdir(): supplied argument is not a valid Directory resource in /home/Keeszie/domains/huisturf.nl/public_html/plaatjes/Plaatjes Rotator.php on line 11


Ik begrijp er echt niks van :P Ik heb al van alles geprobeert maar ik blijf die foutmelding(en) krijgen.
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Kay Kay
Kay Kay
19 jaar geleden
 
0 +1 -0 -1
Hoe kan je het zo maken dat hij ook in submappen kijkt?
En dat je meerdere afbeeldingen naast elkaar krijgt?

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. willekeurig-plaatje

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.