TU sei un grande! primo per la disponibilità, infatti ti chiedo di darmi un contatto per quando ho bisogno e seconda cosa per la tua professionalità!
hai letto quello che ho editato? il fatto dello scrool :|
TU sei un grande! primo per la disponibilità, infatti ti chiedo di darmi un contatto per quando ho bisogno e seconda cosa per la tua professionalità!
hai letto quello che ho editato? il fatto dello scrool :|
Quello credo che sia inevitabile dal momento che si ricarica la pagina
Ecco è quello che stavo pensando pure io ... vabbè non posso voler tutto dalla vita, ultima domandina per questa benedetta galleria di immagini, ovviamente come hai ben capito non sono espertissimo ed è la prima volta che cerco di creare un "slideshow" credo anche suicidandomi facendolo solo in php.
Il fatto che io riesca cliccando un'immagine ad aprirla sempre nella stessa pagina, ma ad esempio sotto alle miniature o affianco è possibile?
Che sonsiglio mi daresti insomma guardiamoci insieme ragionando
Ti ringrazio sempre ovviamente![]()
si, si può.
si può fare una tabella nella prima colonna metti la miniatura nella seconda colonna, se richiesta, metti l'immagine grande.
diciamo che il link sull'immagine dovrebbe essere più o meno così:
[img]immaginepiccola[/img]
ora nell'altra colonna verifichi se é stata richiesta un'immagine grande e se si la carichi
if (isset($_GET['immagine'])
{
echo '[img] . $_GET['immagine'] . '[/img]';
}
il problema é: che correlazione hai previsto tra le immagini grandi e le miniature?
Perché la correlazione ci deve essere.
Che scemo. Non c'é bisogno di due immagini diverse.
ti tieni la grande e per la miniatura la resizi
facilissimo
Guarda sto staccando da lavoro, dopo ti rospondo che torno a casamandami un pm con un tuo contatto msn o icq sennò fa nulla
![]()
Allora, ce la puoi fare. Ti do solo le indicazioni.
la miniatura deve essere un resize dell'originale
<img src"....." width="100" height="100">
Però così te la deforma! quindi dobbiamo risimensioarla proporzionata
1. definiamo che larghezza dovrà avere ($width=100)
2. vediamo la dimesione dell0immagine con la funzione getimagesize(immagine);
3. Creiamo un rapporto tra l'altezza e la larghezza.
4. Moltiplichiamo l'altezza per questo rapporto.
ora abbiamo una larghezza (che abbiamo definito) e un'altezza che abbiamo ricavato e che é proporzionale.
quindi
<img src"....." width="$width" height="$height">
in questo modo il lavoro sarà più semplice perché non dobbiamo creare una corrispondenza tra la miniatura e la grande. In più, quando aggiungerai un'immagine, non dovrai creare una miniatura.
Ok credo di esserci riuscito, però cosi invece di vedere TUTTE le miniature ne vedo sempre una, e come ci clicco sotto mi esce quella grande, e nello stesso tempo sopra mi fa vedere la successiva.
Ho dovuto modificare $page passandogli un altro parametro perchè non te lo sò spiegareCodice PHP:
<?php
function listaDir ($loc) {
$dir = opendir("$loc");
$inc = 0;
while (false !== ($file = readdir($dir))) {
if (eregi("jpg|gif|png", $file))
{
$directory[$inc] = $file;
$inc = $inc + 1;
}
}
return $directory;
}
$img_dir = "slideshow/";
$f = "?page=foto&";
$page = basename($_SERVER['PHP_SELF'])."$f";
//$immagini = array("1.jpg","2.jpg","3.jpg","4.jpg","5.jpg");
$immagini = listaDir('slideshow/');
$dim = count($immagini);
if (!isset($_GET['inc']))
{
$inc = 0;
$dec = -1;
}
else
{
$inc = $_GET['inc'] + 1;
$dec = $_GET['inc'] - 1;
}
//echo $page;
//echo "$immagini[$inc]";
if ($dim > $inc)
{
$current = $img_dir . $immagini[$inc];
echo '[url="' . $page . 'image=' . $current . '&inc=' . $inc .'"][img]'.$current.'[/img][/url]'."\n";
if($immagini[$inc] != "1.jpg"){
echo '[url="' . $page . 'inc=' . $dec . '"]Prev | [/url]';
}
if($immagini[$inc] != "6.jpg"){
echo '[url="' . $page . 'inc=' . $inc . '"]Next[/url]';
}
if (isset($_GET['image']))
{
echo '
[img]'.$_GET['image'] .'[/img]';
}
}
else
{
$current = $img_dir . $immagini[4];
//echo "$current";
echo '[img]'.$current.'[/img]'."\n";
echo '[url="' . $page . '?inc=' . $dec . '"]Prev | [/url]';
}
?>dovrei fartelo vedere!! Cmq se provi il codice e levi quell' $f insomma vedi cosa mi è venuto fuori.
Fammi sapere!!!
p.s L'unica cosa che non mi piace è che quando premo sulla prima foto ad esempio comparendomi sotto, e premo su next la foto grande sotto mi scompare! invece vorrei che rimanesse, vabbè ci pensiamo![]()
if($immagini[$inc] != "1.jpg")
non mettere valori espliciti. fai in modo che il tuo script sia più generale possibile.
dire che if($immagini[$inc] != "1.jpg")
é come dire che if($immagini[$inc] != 0)
e dire che if($immagini[$inc] != "6.jpg")
é come dire if($immagini[$inc] != $dim)
Mi intrometto solo per dire una cosina
Se in una immagine fai il resize di una dimensione e non specifichi la seconda
questa viene automaticamente ridimensionata mantenendo le proporzioni.
Quindi ricavare la larghezza non serve basta fare
<img src".....height="100"> se ci interessa l'altezza e tutto viene dimensionato in proporzione.
ciao
Andrea