Questo script consente di creare molto rapidamente da una directory contenente immagini in formato *.jpg una galleria di immagini da personalizzare come meglio si vuole.
Nello script si fa uso della classe 'DirectoryInfo' e 'FileInfo' per estrarre le informazioni e le immagini dalla cartella indicata.
Lo script analizza i files contenuti in una directory con estenzione *.jpg e li restituisce sul web con una paginazione di 6 immagini per pagina.
Le variabili eventualmente da cambiare sono:
- la directory delle immagini Server.MapPath("\Galleria\Gallery\img")
- l'estensione delle immagini ("*.jpg")
<SCRIPT RUNAT="SERVER"> Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) CaricaLnk(CaricaImg(Request.QueryString("ID"))) End Sub Private Function CaricaLnk(ByVal intI As Integer) ' Questa funzione crea una paginazione delle immagini Dim a As System.Web.UI.WebControls.HyperLink Dim resto As Integer Dim j As Integer If (intI Mod 6) > 0 Then resto = intI / 6 Else resto = (intI / 6) - 1 End If For j = 0 To resto a = New System.Web.UI.WebControls.HyperLink If j <> Request.QueryString("ID") Then a.NavigateUrl = "?ID=" & j End If a.Text = " [" & j & "] " PH.Controls.Add(a) Next End Function Private Function CaricaImg(ByVal Pagina As Integer) As Integer ' Legge il contenuto della directory Dim sr As IO.DirectoryInfo = New DirectoryInfo(Server.MapPath("\Galleria\Gallery\img")) Dim fi() As IO.FileInfo Dim i As Integer ' Carica un array di info sui files con estensione *.jpg della directory caricata fi = sr.GetFiles("*.jpg") Dim j As Integer = fi.GetLength(0) For i = 1 To 6 If ((Pagina * 6) + i - 1) <= j - 1 Then ' Associa l'immagine trovata al controllo Image e il controllo Hyperlink all'indirizzo dell'immagine Dim img As System.Web.UI.WebControls.Image img = DirectCast(FindControl("img" & i), System.Web.UI.WebControls.Image) img.ImageUrl = fi((Pagina * 6) + i - 1).FullName Dim a As System.Web.UI.WebControls.HyperLink a = DirectCast(FindControl("a" & i), System.Web.UI.WebControls.HyperLink) a.NavigateUrl = fi((Pagina * 6) + i - 1).FullName Else Dim img As System.Web.UI.WebControls.Image img = DirectCast(FindControl("img" & i), System.Web.UI.WebControls.Image) img.Visible = False End If Next CaricaImg = j End Function </SCRIPT> <form id="Form1" method="post" runat="server"> <asp:HyperLink runat=server id=a1> <asp:Image id=img1 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <asp:HyperLink runat=server id="a6"> <asp:Image id=img6 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <asp:HyperLink runat=server id="a5"> <asp:Image id=img5 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <asp:HyperLink runat=server id="a4"> <asp:Image id=img4 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <asp:HyperLink runat=server id="a3"> <asp:Image id=img3 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <asp:HyperLink runat=server id="a2"> <asp:Image id=img2 runat="server" Width="195px" Height="134px"></asp:Image> </asp:HyperLink> <br> <asp:PlaceHolder Runat=server ID=PH></asp:PlaceHolder> </form>
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.