- Home
- Categorie
- Coding e Sistemistica
- PHP
- Creare galleria fotografica senza DB
-
Creare galleria fotografica senza DB
Salve ragazzi, volevo una info... devo creare una galleria semplice in php senza database, devo caricare le foto da una cartella nel server. In pratica aggiungo le foto nella cartella rinominandole a partire da 1 fino a quante sono. L'unica cosa che nella pagina ci devono essere le 2 frecce una avanti e una dietro per poter scorrere. Qualche ideo oppure qualche script di utilità???
Salutoni e grazie in anticipo
-
Uno script semplice semplice:
[php]
$pagina = @$_GET["pag"];
$path = "upload/images";if(file_exists("$path/$pagina")
{
echo "<img src="$path/$pagina.jpg" alt="image" /><br /><br />";
echo "<a href="pagina.php?pag={$pagina - 1}">Indietro</a>";
echo "<a href="pagina.php?pag={$pagina + 1}">Avanti</a>";
}
else
echo "Immagine non trovata!";
[/php]Ciao!
-
Si può fare anche con javascript ?
-
Prova in questo modo, ma non l'ho provato e non garantisco il funzionamento
Codice Javascript:
var img_div = document.getElementById("image"); var num_img = 0; function file_exists(url) { var req = this.window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest(); if(!req) {throw new Error("XMLHttpRequest not supported"); } req.open("HEAD", url, false); req.send(null); if(req.status == 200) return true; return false; } function show() { var out = ""; if(file_exists("immagini/" + num_img + ".jpg")) out += "<img src=\"immagini/" + num_img + ".jpg\" alt=\"image\" /><br /><br />"; else out += "Immagine non trovata!<br /><br />"; if(num_img > 0) { out += "<a href=\"#\" onclick=\"indietro();\">Indietro</a>"; out += "<a href=\"#\" onclick=\"avanti();\">Avanti</a>"; } else out += "<a href=\"#\" onclick=\"avanti();\">Avanti</a>"; img_div.innerHTML = out; } function avanti() { num_img++; show(); } function indietro() { num_img--; show(); }
Codice HTML:
<body onload="show();"> <!-- ... --> <div id="image"><!-- void --></div>
Ciao!
-
Ciao sto testando questo script però mi dà molti problemi a livello proprio di visualizzazione... ti aggiorno. Ah e cmq grazie eh!
-
@Sups said:
Uno script semplice semplice:
[php]
$pagina = @$_GET["pag"];
$path = "upload/images";if(file_exists("$path/$pagina")
{
echo "<img src="$path/$pagina.jpg" alt="image" /><br /><br />";
echo "<a href="pagina.php?pag={$pagina - 1}">Indietro</a>";
echo "<a href="pagina.php?pag={$pagina + 1}">Avanti</a>";
}
else
echo "Immagine non trovata!";
[/php]Ciao!
Niente da fare quando provo a farla partire... non mi carica le immagini e poi devo mettere le unioni con il punto(.) per quanto riguarda {$pagina + 1
} e la seconda. Strano perchè a livello di sintassi non vedo nessun problema. Cmq continuo a cercara la soluzione... perchè questo mini script non è male.
-
Ho dimenticato un pezzo:
file_exists("$path/$pagina")
devi cambiarlo in:
file_exists("$path/$pagina.jpg")
Ciao!
-
@Sups said:
Ho dimenticato un pezzo:
file_exists("$path/$pagina")
devi cambiarlo in:
file_exists("$path/$pagina.jpg")
Ciao!
Niente mi da sto maledetto errore di parse:
Parse error: parse error, expecting `'}'' in C:\wamp\www\offerte\index.php on line 17
-
Mancava anche una parentesi nel codice
[php]
$pagina = @$_GET["pag"];
$path = "upload/images";if(file_exists("$path/$pagina.jpg"))
{
echo "<img src="$path/$pagina.jpg" alt="image" /><br /><br />";
echo "<a href="pagina.php?pag={$pagina - 1}">Indietro</a>";
echo "<a href="pagina.php?pag={$pagina + 1}">Avanti</a>";
}
else
echo "Immagine non trovata!";
[/php]
-
@Sups said:
Mancava anche una parentesi nel codice
[php]
$pagina = @$_GET["pag"];
$path = "upload/images";if(file_exists("$path/$pagina.jpg"))
{
echo "<img src="$path/$pagina.jpg" alt="image" /><br /><br />";
echo "<a href="pagina.php?pag={$pagina - 1}">Indietro</a>";
echo "<a href="pagina.php?pag={$pagina + 1}">Avanti</a>";
}
else
echo "Immagine non trovata!";
[/php]se è la parentesi dell'if quella già l'avevo risolta il parse lo da sulle parentesi graffe... che palle... cioè questa è una semplice galleria ma veramente mi sta facendo dannare... l'unica cosa i nomi delle immagini può essere generico es:(ciccio.jpg pippo,jpg) oppure numerico? anche se ho provato entrabe le soluzioni ma non mi visualizza l'immagine con alcuni tentativi. in pratica nel codice html in proprietà delle pagina con IE noto che la cartella da dove prende l'immagine non mette solo il .jpg
Es:
<img src='upload/images/.jpg' alt='image'/><a href='pagina.php?pag=-1'>Indietro</a><a href='pagina.php?pag=1'>Avanti</a></p>
-
Prova questa modifica:
[php]
$pagina = (@$_GET["pag"] != "") ? @$_GET["pag"] : 0;
[/php]
-
@Sups said:
Prova questa modifica:
[php]
$pagina = (@$_GET["pag"] != "") ? @$_GET["pag"] : 0;
[/php]Porca miseria! c'hai ragione infatti avevo provato ad impostare la variabile pagina a 0. Mi dava immagine non trovata giustamente le foto che ho messo io partono da 1 Inoltre un piccolo accorgimento il codice che mi hai postato deve essere modificato così. Nel caso in cui le foto partono da 1.jpg
[php]
$pagina = (@$_GET["pag"] != "") ? @$_GET["pag"] : 1;
$path = "upload/images";if(file_exists("$path/$pagina.jpg"))
{
echo "<img src="$path/$pagina.jpg" alt="image" /><br /><br />";
echo "<a href="pagina.php?pag=". ($pagina - 1) ."">Indietro</a>";
echo "<a href="pagina.php?pag=" . ($pagina + 1) ."">Avanti</a>";
}
else
echo "Immagine non trovata!";
[/php]Da notare l'incremento della pagine da un errore se rimangono le graffe.
Cmq per ora procede bene poi te la farò vedere finita sul sito Un grandissimo grazie ovviamente. A buon rendere.
Devo studiarmi bene la parte dei file in PHP per questo non avevo idee per affrontare il problema... alla fine banale.
Grazie ancora!
-
Prego!
Ciao!