Buongiorno, sono Roberto da Bologna, fresco fresco di iscrizione.
Ho trovato assai utile questo script e l'ho subito messo in pratica.
Però ho due domande per l'autore.
1) E' possibile pre-impostare il valore del campo "inputNome" con un valore univoco già esistente (tipo guid già generato) in modo che l'immagine inserita non corra il rischio di sovrapporsi ad altre immagini esistenti con lo stesso nome?
2) Come fare a trasformare lo script per gestire i video? ci ho provato da me ma i risultati sono stati poco confortanti.
di seguito vi posto il codice che ho usato per gestire le immagini.
grazie
ROberto
<SCRIPT language="VB" RUNAT="server">
' 20 KB=20*1024
Const MaxLength = 240960
const FileType="image/*"
'in pixel
const MaxWidth=640
Const MaxHeight = 640
Sub BtnUp_Click(sender As Object, e As EventArgs)
'controllo la dimensione del file
If inputFile.PostedFile.ContentLength>MaxLength Then
Results.InnerHtml = "Il file è di dimensioni troppo elevate. Max " & MaxLength/1024 & "KB"
'controllo il tipo di file caricato in bytes
ElseIf Not inputFile.PostedFile.ContentType.StartsWith("image") Then
Results.InnerHtml = "Il file non è valido. Dev'essere un'immagine"
Else
'effettuo un controllo sulle dimensioni dell'immagine
Dim img as System.Drawing.Image=System.Drawing.Image.FromStream(inputFile.PostedFile.InputStream)
If img.Width>MaxWidth OrElse img.Height>MaxHeight Then
Results.InnerHtml = "L'immagine ha dimensioni superiori a quelle consentite. Max " & MaxWidth & "x" & MaxHeight
Else
'se è tutto ok, salvo l'immagine
inputFile.PostedFile.SaveAs( Server.MapPath("mdb-database" & "\" & inputNome.Value) )
Results.InnerHtml = "FileUploadato: " & inputNome.Value & "</b>! <a href=main/Add_Photo.asp?inputFile=" & inputNome.Value & "&ID_ANAGRAFICA=" & Request.QueryString("ID_ANAGRAFICA")& "&ID_SESSIONE="& session("ID_SESSIONE") & ">clicca qui per completare la procedura</a>"
End If
img.Dispose()
End If
End Sub
Sub Page_Load(sender as Object, e as EventArgs)
inputFile.Accept=FileType
End Sub
</SCRIPT>
<html>
<head runat="server">
<title runat="server">Pagina di upload delle foto</title>
<link href="css/css.css" rel="stylesheet" type="text/css" runat="server">
</head>
<body runat="server" class="txttListaProfilo2">
<form enctype="multipart/form-data" RUNAT="server">
<DIV id=Results RUNAT="server"></DIV>
<p runat="server" class="linkContatta">
<BR>
<input id="inputFile" type="file" RUNAT="server" style="POSITION: absolute; left: 187px; top: 48px; z-index: 100; font-size:10px" />
<input id="inputNome" type="text" RUNAT="server" style="position:absolute; left: 187px; top: 78px; z-index: 100; font-size:10px" />
<input type="button" id="BtnUp" value="Invio" OnServerClick="BtnUp_Click" RUNAT="server" style="position:absolute; left: 187px; top: 108px; z-index: 102; font-size:10px" /><BR>
<asp:requiredfieldvalidator id="RequiredFieldValidator1" runat="server" controltovalidate="inputNome"
errormessage="Occorre dare un nome alla foto" style="z-index: 106; left: 305px; position: absolute; top: 78px"></asp:requiredfieldvalidator>
<asp:Label ID="Label1" runat="server" Style="left: 50px; position: absolute; top: 48px; z-index: 104;"
Text="Seleziona la foto: "></asp:Label>
<asp:Label ID="Label2" runat="server" Style="left: 50px; position: absolute; top: 78px; z-index: 105;"
Text="Nome" Height="7px"></asp:Label></p>
<p> </p>
<p> </p>
<p runat="server" class="linkContatta">AIUTO E ISTRUZIONI</p>
<p runat="server" class="minuscolo">Da questa pagina è possibile caricare la tua foto. Occorre rispettare alcune limitazioni.<br />
- Il file caricato deve essere un'immagine. <br />
- Non puo' superare il 640 pixel in lunghezza e/o in larghezza.<br />
- Deve "pesare" non oltre i 200 Kb.<br />
</p>
<p runat="server" class="minuscolo"><strong>Se hai difficoltà a ridimensionare la tua foto</strong><br>
CLICCA QUI</p>
<p></p>
<p runat="server" class="minuscolo"><strong>Altrimenti spediscila a AUPAT come allegato</strong><br>
<a href="mailto:#?subject=Spedisco la foto"class="nomeCognome">SPEDISCI LA FOTO</a></p>
</form>
</body>
</html>