Articoli marcati con tag ‘ASP.NET’

Asp.net: Creazione di un sondaggio

16 giu 2009

Creare un sondaggio attraverso del codice asp.net non è molto semplice, ma con questo tutorial può diventare alla portata di tutto. Per la realizzazione utilizzeremo un file database.mdb, ecco il codice commentato per capire meglio:

 
 
 
 
 
 
 
' Creo la connessione ed il recordset
Private cn As New ADODB.Connection
Private rs As New ADODB.Recordset
 
' --- VOTAZIONE ---
Private Sub Sondaggio(sender As Object, e As EventArgs)
 
' Apro la connessione
cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" _
& Server.MapPath("database.mdb"))
 
' Controllo che l'utente voti una sola volta
If Session("controlla") = "" Then
 
' Effettuo la votazione
Dim voto As String = ""
If A.Checked Then voto = "A"
If B.Checked Then voto = "B"
If C.Checked Then voto = "C"
If D.Checked Then voto = "D"
 
cn.Execute("INSERT INTO sondaggio (voto) VALUES ('" & voto & "')")
 
Session("controlla") = "OK"
Messaggio.Text = "Grazie per aver votato!"
Else
' Avviso che il voto è unico
Messaggio.Text = "Attenzione, hai già votato!"
End If
 
cn.Close()
 
End Sub
 
' --- LETTURA ---
Private Sub Leggi(sender As Object, e As EventArgs)
 
' Nascondo il modulo e mostro i risultati
sondInput.Visible = False
sondOutput.Visible = True
 
' Apro la connessione
cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" _
& Server.MapPath("database.mdb"))
 
' Effettuo il conteggio dei voti ricevuti
Dim votoA As Object = cn.Execute("SELECT COUNT(voto) AS temp FROM sondaggio WHERE voto = 'A'")
Dim votoB As Object = cn.Execute("SELECT COUNT(voto) AS temp FROM sondaggio WHERE voto = 'B'")
Dim votoC As Object = cn.Execute("SELECT COUNT(voto) AS temp FROM sondaggio WHERE voto = 'C'")
Dim votoD As Object = cn.Execute("SELECT COUNT(voto) AS temp FROM sondaggio WHERE voto = 'D'")
 
Risultati.text = ""
Risultati.text += "<ul>"
Risultati.text += "<li>Si, molto! (" &amp; votoA("temp").Value &amp; ")</li>"
Risultati.text += "<li>Abbastanza (" &amp; votoD("temp").Value &amp; ")</li>"
Risultati.text += "<li>Mica tanto... (" &amp; votoC("temp").Value &amp; ")</li>"
Risultati.text += "<li>No! (" &amp; votoD("temp").Value &amp; ")</li>"
Risultati.text += "</ul>"
 
Dim voti As Object = cn.Execute("SELECT COUNT(voto) AS temp FROM sondaggio")
 
Risultati.text += "<p>Voti totali: " &amp; voti("temp").Value &amp; "</p>"
 
cn.Close()
 
End Sub
 
 
 
 
<title>Un sondaggio in ASP.NET</title>
 
 
 
 
<h1>Ti piace questo sito?</h1>
 
<form>
<p>
 
<br>
 
<br>
 
<br>
 
<br><br>
 
 
<br><br>
 
</p>
<p>
 
</p>
</form>

Asp.Net: Mail con allegato

16 giu 2009

Asp.Net: Mail con allegato

Ecco il codice di esempio che spiega come inviare mail con allegato utilizzando solo codice Asp.net

 
Dim MyEmail As New Web.Mail.MailMessage
 
' Specificare il nome e il percorso (sul server) del file 
' che si vuole mandare come allegato
Dim attachment As New Mail.MailAttachment("C:\percorso\file")
 
MyEmail.From = "Mittente"
 
MyEmail.To = "destinatario@email.com" 
 
MyEmail.Subject = "Oggetto dell'email"
 
MyEmail.Body = "Ciao, questo è il testo della mail"
 
' Aggiungo l'allegato all'email
MyEmail.Attachments.Add(attachment)
 
Web.Mail.SmtpMail.Send(MyEmail)

Asp.net: Come accedere al log del server

15 giu 2009

Attraverso Asp.net è possibile accedere al log degli eventi del nostro server web, il log è un’utility presente all’interno di ogni computer che permette di visualizzare l’elenco degli accessi effettuati da parte degli utenti, oltre a virus e al loro stato d’azione.

Ecco il codice commentato:

 
 
 
    Sub Page_Load
        ' Creo l'oggetto EventLog()
        Dim LOG_MioServer = new EventLog("System")
 
        With txtEventi
            ' Stampo a video il numero di eventi
            .Text = LOG_MioServer.Entries.Count &amp; "Eventi<br><br>"
 
            ' Stampo a video tutti gli eventi del server
            Dim Eventi As EventLogEntry
            For Each Eventi In LOG_MioServer.Entries
                .Text += Eventi.EventID.ToString() &amp; ") "
                .Text += Eventi.Source &amp; " - "
                .Text += Eventi.TimeGenerated.ToString() &amp; "<br>"
            Next
        End With
    End Sub
 
 
 
        <title>Accedere al LOG degli eventi del server</title>
 
 
 
<form>
 
</form>

Asp.net: Creazione codice Captcha

15 giu 2009

Prima di inserire il codice dovete creare un’immagine di dimensioni casuali in formato bitmap e nominatela captcha.bmp. Ora creare il file captcha.aspx e inserite questo codice:

 
 
 
 
 
 
    Sub Page_Load
        Dim numero = New Random()
        Dim risultato = numero.Next(10000, 99999)
        CAPTCHA(risultato)
    End Sub
    Sub CAPTCHA(ByVal testo As String)
        Dim file As String = Server.MapPath("captcha.bmp")
        Dim immagine As System.Drawing.Image
        immagine = System.Drawing.Image.FromFile(file)
        Dim oggetto As Graphics = Graphics.FromImage(immagine)
        Dim carattere As Font = new Font("Verdana", 10)
        Dim colore As SolidBrush = new SolidBrush(Color.Black)
        Dim coordinate As PointF = new PointF(0.0F, 0.0F)
        oggetto.DrawString(testo, carattere, colore, coordinate)
        Response.ContentType = "image/jpeg"
        immagine.Save(Response.OutputStream, ImageFormat.Jpeg)
        immagine.Dispose()
    End Sub

All’interno della parte front-end richiamate l’immagine con questa stringa:

<img src=”captcha.aspx”>

Per chi non lo sapesse il codice Captcha è molto utile in fase di compilazione di form per evitare invii automatici indesiderati da parti software utilizzati dagli spammer.

Asp.net : Modulo Segnala a un Amico

10 giu 2009

In questo tutorial vi sarà spiegato come realizzare attraverso il codice di programmazione asp il famoso modulo chiamato Tell a Friend. Si tratta di un modulo che permette agli utenti di segnalare in automatico un sito interessante ai propri amici tramite mail.

 
 
 
 
 
 
 
Private Sub Tell(sender As Object, e As EventArgs)
 
' Espressione regolare di un indirizzo email per ASP.NET
Dim re As New Regex("(?[^@]+)@(?.+)")
 
' Controllo che il campo Tuo nome venga compilato
If Len(Trim(TN.Text)) = 0 Then
Messaggio.Text = "Inserisci il tuo nome"
Exit Sub
End If
 
' Controllo che il campo Tua email venga compilato correttamente
If re.IsMatch(TE.Text) = False Then
Messaggio.Text = "Inserisci il tuo indirizzo email"
Exit Sub
End If
 
' Controllo che il campo Nome Amico venga compilato
If Len(Trim(NA.Text)) = 0 Then
Messaggio.Text = "Inserisci il nome del tuo Amico"
Exit Sub
End If
 
' Controllo che il campo Email Amico venga compilato correttamente
If re.IsMatch(EA.Text) = False Then
Messaggio.Text = "Inserisci l'indirizzo email del tuo Amico"
Exit Sub
End If
 
' Formatto la mail in un oggetto MailMessage
Dim mail As New MailMessage
mail.To = EA.Text
mail.From = TE.Text
mail.Subject = "Segnalazione sito"
mail.Body = "Ciao " &amp; NA.Text &amp; ", il tuo Amico " &amp; TN.Text _
&amp; " ti invita a visitare questo sito" &amp; vbCrLf _
&amp; "http://www.programmando.net"
 
' Invio la segnalazione via mail
SmtpMail.SmtpServer = "smtp.fastwebnet.it"
SmtpMail.Send(mail)
 
Messaggio.Text = "Segnalazione inviata con successo"
End Sub
 
 
 
 
<title>Tell a Friend</title>
 
 
 
 
 
 
<h1>TELL A FRIEND</h1>
 
<form>
Tuo nome<br>
<br>
Tua email<br>
<br>
Nome del tuo Amico<br>
<br>
Email del tuo Amico<br>
<br><br>
<br><br>
 
</form>