Ciao ragazzi, vorrei caricare delle immagini random da una cartella, 2 a 2..
Ho soprannominato tutti i file:
1.jpg
2.jpg e così via..
e vorrei che siano randomizzate a coppie e poi stampate a video, come posso fare?
Ciao ragazzi, vorrei caricare delle immagini random da una cartella, 2 a 2..
Ho soprannominato tutti i file:
1.jpg
2.jpg e così via..
e vorrei che siano randomizzate a coppie e poi stampate a video, come posso fare?
Genera un numero random con la funzione rand e poi richiama rand ancora fino a che non ottieni un numero diverso dal primo
I due numeri che hai ottenuto li usi concatenandoci ".jpg" e richiami i tuoi file
Mi potresti aiutare con il ragionamento? Io sono arrivato così: che leggo prima tutti i valori della cartella "download", poi li conto con count(), e dopo li randomizzo tutti, a questo punto?Codice PHP:
<?
$glob=glob('download/*.jpg');
$count=count($glob);
$rand=rand(0, $count);
?>
Corretto, devi richiamare di nuovo rand per avere un altro numero
Però, visto che usi glob, usa array_rand: puoi ottenere direttamente elementi casuali dall'array creato con glob
A te serve avere sempre 1.jpg e 2.jpg oppure 6.jpg e 7.jpg?
Se si, prendi un valore di rand che usi per il primo file e ci sommi 1 per il secondo
Il valore massimo di rand, ovviamente, deve essere minore del conteggio di glob, altrimenti vai fuori dalle chiavi dall'array glob
perfect, l'unico problema è che non capisco come stampare a video, dove è l'errore..?
Codice PHP:
<?php
$glob=glob('caricamenti/*.jpg');
$n=count($glob);
$fine=$n-2;
$random=rand(0, $fine);
echo '<img src=".$glob[$random]"/><img src=".$glob[($random+1)]"/>';
?>
Sbagli nel concatenare nell'echo
Codice PHP:
echo '<img src="'.$glob[$random]. '"/><img src="' .$glob[($random+1)] .'"/>';
Guarda il sorgente HTML della pagina e controlla che il percorso dell'immagine scritto dal PHP sia corretto
Ho la sensazione che manchi l'indicazione della cartella in cui sono contenute le immagini