Gallery

  • Creatore Discussione Creatore Discussione danlupo
  • Data di inizio Data di inizio

danlupo

Utente Attivo
13 Lug 2009
73
0
0
Salve ho uno slideshow di immagini dalla versione originale ne ho creato uno che nelle intenzioni dovrebbe prendere le immagini direttamente da una cartella data alla chiamata della funzione: Ma qualcosa non deve essere stata fatta nel modo migliore..

Chiamata

PHP:
<div id="gallery">
            <?php
            require('scripts/php/gallery.php');
                $file = galleria('images/gallery/410/');
                echo count($file);
            ?>
        </div>

Gallery
PHP:
<body>
<div id="slider">
 <ul id="sliderContent">
<?php

function galleria($dir)
{
    $file = elencafiles($dir);
        foreach ($file as $immagine)
        {
              echo "<li class=sliderImage>";
              echo"<img src=$dir$immagine alt=$immagine height=200px width=230px/>";
              echo"<span class='top'></span>";
              echo"</li>";
        }
}
?>
<div class="clear sliderImage"></div>
</ul>
</div>
Elenco File

PHP:
<?php
function elencafiles($dir)
{
$arrayfiles=Array();
$cartella = opendir($dir);
while (false !== ($file = readdir($cartella))) {
if ($file != "." && $file != "..") {
if ((substr($file,strpos($file,'.')+1)=='jpg') or (substr($file,strpos($file,'.')+1)=='bmp') or (substr($file,strpos($file,'.')+1)=='gif')) 
                                    {
                                array_push($arrayfiles,$file);
                                    }
}
}
closedir($cartella);
sort($arrayfiles);

	return $arrayfiles;
}
?>
Grazie.. Daniele
 
ciao
non vorrei dire una ca...ta, ma mi sembra che

while (false !== ($file = readdir($cartella))) {

dovrebbe essere

while (false != ($file = readdir($cartella))) {

e poi perchè cosi complicato, non dovrebbe andare bene anche così

while ($file = readdir($cartella)) {
?
 
da quanto ho capito l'errore me lo da in questo frammento

Codice:
    foreach ($file as $immagine)
        {
              echo "<li class=sliderImage>";
              echo"<img src=$dir$immagine alt=$immagine height=200px width=230px/>";
              echo"<span class='top'></span>";
              echo"</li>";
        }

Perchè cancellando echo "<li class=sliderImage>"; qualcosa stampa anche se sbagliando lo stile..
 
ciao (questa è la ca della mattina)

hai provato a srivere

echo "<li class=\"sliderImage\">";
echo"<img src=\"$dir$immagine\" alt=\"$immagine\" height=\"200px\" width=\"230px\"/>";
echo"<span class='top'></span>";
echo"</li>";

oppure gli apici singoli?
scusa ho visto una cosa
$dir$immagine
ti conviene fare il concatenamento e poi tra dir e immagine non ti ci vuole lo slash?

echo "<img src=\"".$dir."/."$immagine."\".........
 
Ultima modifica:
Salve se tolgo il tag LI con lo stile mi stampa una sotto l'altra le immagini senza far partire lo slide..
 

Discussioni simili