snisni63
پنج شنبه 12 مهر 1386, 14:36 عصر
سلام
شاید عنوان مناسبی نباشه ولی ...
<%@ Page Language="VB" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR
/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Dim Paging As New PagedDataSource
Dim currentPage As Integer
Dim upFolder As String = MapPath("~/Gallery/")
Dim dir As New DirectoryInfo(upFolder)
Paging.DataSource = Dir.GetFiles()
Paging.AllowPaging = True
Paging.PageSize = 1
If (Request.QueryString("Page") <> Nothing) Then
currentPage = Convert.ToInt32(Request.QueryString("Page"))
Else
currentPage = 1
End If
Paging.CurrentPageIndex = currentPage - 1
If Not Paging.IsFirstPage Then
p.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(currentPage - 1)
End If
If Not Paging.IsLastPage Then
n.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(currentPage + 1)
End If
DataList1.DataSource = Paging
DataList1.DataBind()
End Sub
Sub btnAdd_Click(ByVal sender As Object, ByVal e As EventArgs)
If (upImage.HasFile) Then
If (CheckFileType(upImage.FileName)) Then
Dim filePath As String = "~/Gallery/" & upImage.FileName
upImage.SaveAs(MapPath(filePath))
End If
End If
End Sub
Function CheckFileType(ByVal fileName As String) As Boolean
Dim ext As String = Path.GetExtension(fileName)
Select Case ext.ToLower()
Case ".gif"
Return True
Case ".png"
Return True
Case ".jpg"
Return True
Case ".jpeg"
Return True
Case Else
Return False
End Select
End Function
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>FileUpload File</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label
id="lblImageFile"
Text="Image File:"
AssociatedControlID="upImage"
Runat="server" />
<asp:FileUpload
id="upImage"
Runat="server" />
<br /><br />
<asp:Button
id="btnAdd"
Text="Add Image"
OnClick="btnAdd_Click"
Runat="server" />
<hr />
<asp:DataList
id="DataList1"
RepeatColumns="3"
runat="server">
<ItemTemplate>
<asp:HyperLink id="Image1Link" runat="server" >
<asp:ImageButton ID="Image1"
ImageUrl='<%# Eval("Name", "~/Gallery/{0}") %>'
style="width:200px"
Runat="server">
</asp:ImageButton>
</asp:HyperLink>
<br />
<%# Eval("Name") %>
</ItemTemplate>
</asp:DataList>
<asp:HyperLink ID="p" Text="صفحۀ قبل" runat="server"/>
<asp:HyperLink ID="n" Text="صفحۀ بعد" runat="server" />
</div>
</form>
</body>
</html>
من برای نمایش یک گالری عکس در سایت از روش بالا استفاده کردم. حالا به فرض می خواهیم امکان Delete این عکس ها هم با استفاده از کنترل DataList فراهم باشه، باید چی کار کنم؟
سوال بعدی که شاید تکرار همین سوال باشه :
من در سایتم یک جدول کاربران دارم که شامل یک فیلد برای آدرس تصاویر آپلود شدشون هست. برای اینکه حجم بانک داده زیاد نشه، تصاویر رو فایل سیستم ذخیره کردم. حالا اگر بخوام یک کاربر رو Delete کنم چه طور می تونم تصویری هم که مربوط به اونه از توی سایت حذف کنم؟
خیلی ممنون
شاید عنوان مناسبی نباشه ولی ...
<%@ Page Language="VB" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR
/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Dim Paging As New PagedDataSource
Dim currentPage As Integer
Dim upFolder As String = MapPath("~/Gallery/")
Dim dir As New DirectoryInfo(upFolder)
Paging.DataSource = Dir.GetFiles()
Paging.AllowPaging = True
Paging.PageSize = 1
If (Request.QueryString("Page") <> Nothing) Then
currentPage = Convert.ToInt32(Request.QueryString("Page"))
Else
currentPage = 1
End If
Paging.CurrentPageIndex = currentPage - 1
If Not Paging.IsFirstPage Then
p.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(currentPage - 1)
End If
If Not Paging.IsLastPage Then
n.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(currentPage + 1)
End If
DataList1.DataSource = Paging
DataList1.DataBind()
End Sub
Sub btnAdd_Click(ByVal sender As Object, ByVal e As EventArgs)
If (upImage.HasFile) Then
If (CheckFileType(upImage.FileName)) Then
Dim filePath As String = "~/Gallery/" & upImage.FileName
upImage.SaveAs(MapPath(filePath))
End If
End If
End Sub
Function CheckFileType(ByVal fileName As String) As Boolean
Dim ext As String = Path.GetExtension(fileName)
Select Case ext.ToLower()
Case ".gif"
Return True
Case ".png"
Return True
Case ".jpg"
Return True
Case ".jpeg"
Return True
Case Else
Return False
End Select
End Function
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>FileUpload File</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label
id="lblImageFile"
Text="Image File:"
AssociatedControlID="upImage"
Runat="server" />
<asp:FileUpload
id="upImage"
Runat="server" />
<br /><br />
<asp:Button
id="btnAdd"
Text="Add Image"
OnClick="btnAdd_Click"
Runat="server" />
<hr />
<asp:DataList
id="DataList1"
RepeatColumns="3"
runat="server">
<ItemTemplate>
<asp:HyperLink id="Image1Link" runat="server" >
<asp:ImageButton ID="Image1"
ImageUrl='<%# Eval("Name", "~/Gallery/{0}") %>'
style="width:200px"
Runat="server">
</asp:ImageButton>
</asp:HyperLink>
<br />
<%# Eval("Name") %>
</ItemTemplate>
</asp:DataList>
<asp:HyperLink ID="p" Text="صفحۀ قبل" runat="server"/>
<asp:HyperLink ID="n" Text="صفحۀ بعد" runat="server" />
</div>
</form>
</body>
</html>
من برای نمایش یک گالری عکس در سایت از روش بالا استفاده کردم. حالا به فرض می خواهیم امکان Delete این عکس ها هم با استفاده از کنترل DataList فراهم باشه، باید چی کار کنم؟
سوال بعدی که شاید تکرار همین سوال باشه :
من در سایتم یک جدول کاربران دارم که شامل یک فیلد برای آدرس تصاویر آپلود شدشون هست. برای اینکه حجم بانک داده زیاد نشه، تصاویر رو فایل سیستم ذخیره کردم. حالا اگر بخوام یک کاربر رو Delete کنم چه طور می تونم تصویری هم که مربوط به اونه از توی سایت حذف کنم؟
خیلی ممنون