tags:

views:

43

answers:

0

Hello i want to appreciate u guys for answering my technical questions. I am working on a photo project and i want users to be able to upload jpg, gif, bmp,png format. Right now, the project allows only jpg image format. Can someone help me with that? My code is below:

Imports System.Data
Imports System.IO
Imports System.Data.SqlClient
Partial Class PhotoAdmin_Default
    Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    UserIdValue.Text = Membership.GetUser().ProviderUserKey.ToString()
    cannotUploadImageMessage.Visible = False

End Sub


Protected Sub dvPictureInsert_ItemInserted(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DetailsViewInsertedEventArgs) Handles dvPictureInsert.ItemInserted
    'If the record was successfully inserted, save the picture
    If e.AffectedRows > 0 Then
        'Determine the maximum pictureID for this user
        Dim results As DataView =
            CType(maxPictureIDDataSource.Select(DataSourceSelectArguments.Empty), 
                DataView)

        Dim pictureIDJustAdded As Integer = CType(results(0)(0), Integer)

        'Reference the FileUpload control
        Dim imageUpload As FileUpload =
            CType(dvPictureInsert.FindControl("imageUpload"), FileUpload)

        If imageUpload.HasFile Then
            Dim baseDirectory As String = Server.MapPath("~/UploadedImages/")

            imageUpload.SaveAs(baseDirectory & pictureIDJustAdded & ".jpg")
        End If

    End If

    If e.Exception Is Nothing Then

        ' Use the AffectedRows property to determine whether the
        ' record was inserted. Sometimes an error might occur that 
        ' does not raise an exception, but prevents the insert
        ' operation from completing.
        If e.AffectedRows = 1 Then

            MessageLabel.Text = "Record inserted successfully."

        Else

            MessageLabel.Text = "An error occurred during the insert operation."

            ' Use the KeepInInsertMode property to remain in insert mode
            ' when an error occurs during the insert operation.
            e.KeepInInsertMode = True

        End If

    Else

        ' Insert the code to handle the exception.
        MessageLabel.Text = e.Exception.Message

        ' Use the ExceptionHandled property to indicate that the 
        ' exception has already been handled.
        e.ExceptionHandled = True
        e.KeepInInsertMode = True

    End If

End Sub



Protected Sub dvPictureInsert_ItemInserting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DetailsViewInsertEventArgs) Handles dvPictureInsert.ItemInserting
    Dim cancelInsert As Boolean = False


    Dim imageUpload As FileUpload =
        CType(dvPictureInsert.FindControl("imageUpload"), FileUpload)

    If Not imageUpload.HasFile Then
        cancelInsert = True
    Else
        If Not imageUpload.FileName.ToUpper().EndsWith(".JPG") Then
            cancelInsert = True 'Invalid image file!


        Else
            Dim image As System.Drawing.Image =
                System.Drawing.Image.FromStream(imageUpload.PostedFile.InputStream)
            If image.Width > 600 Or image.Height > 700 Then
                cancelInsert = True
            End If

        End If
    End If

    If cancelInsert Then
        e.Cancel = True
        cannotUploadImageMessage.Visible = True
    End If

    'Set the UserId value to the currently logged on user's ID
    e.Values("UserId") = Membership.GetUser().ProviderUserKey

    'Set the UploadedOn value to the current date/time
    e.Values("UploadedOn") = DateTime.Now
End Sub

Protected Sub gvPictures_RowDeleted(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeletedEventArgs) Handles gvPictures.RowDeleted
    Dim baseDirectory As String = Server.MapPath("~/UploadedImages/")
    Dim fileName As String = baseDirectory &
        e.Keys("PictureID") & ".jpg"
    File.Delete(fileName)
End Sub