图片路径用逗号或者分号隔开存放在数据库里,显示的时候在datagrid中只显示其中一个,然后点图片进入到第二个页面,查看更多的图片。楼主是这个想法吗?
解决方案 »
- 为什么不能消除文字水银的锯齿呢
- protected void Page_Load(object sender, EventArgs e)什么时候执行的?
- 树的应用。
- datalist控件里 imagebutton控件的错误
- XML添加节点问题
- 能不能不列出那么多参数?
- 如何解决关闭模式窗口不弹出提示信息?
- vs2005 母版页与文本编辑器问题 急 在线等
- 求助:asp.net(vb)如何把登陆者的用户名,IP,登陆时间,登出时间,这些信息添加到一个表里!
- 求助:怎么使生成的每个aspx页面都有同样的内容,如页面左边的树形菜单?
- 在DATAGRID上如何删除附件
- 请高手帮忙,客户端的权限如何设置才合理
一:kbryant 发表于:2008-01-12 18:12:355楼 得分:0
恩,DataList 可以实现的 请问怎么用程序实现出来?二:pt1314917 发表于: 图片路径用逗号或者分号隔开存放在数据库里,显示的时候在datagrid中只显示其中一个,然后点图片进入到第二个页面,查看更多的图片。楼主是这个想法吗? 请问图片路径用逗号或者分号隔开怎样存放在数据库里?
显示的时候在datagrid中只显示其中一个,然后点图片进入到第二个页面,查看更多的图片。是的,点击进入查看更多的图片时,会有6张或者9张小图,当用户点击6张或者9张图片中某一张图片时,另外的页面是祥细的图片展示
三:这是存放数据库这个strimage字段中例如:../imgae/003.jpg,:../imgae/004.jpg,:../imgae/005.jpg等等图片路径,
图片和图片之间用分号隔开,然后过滤,选择第一个
请问怎么做呢?能否用程序加实例列出来,谢谢
Insus.NET想,这种方法来实现,也许是最糟的一种方法吧.
一个用户多张图片,即按照数据库设计规范,是一对多的关系,应该设计为两张表为好,一是用户表,二是图片表.
多时,修改编辑或是删除,都好处理.
你这个问题,应该不是很难的问题,才对.
我叫JACKCONG ..入行快一年了。。
Insus.NET
等 级:
发表于:2008-01-14 10:00:1412楼 得分:0
"图片路径用逗号或者分号隔开存放在数据库里"
Insus.NET想,这种方法来实现,也许是最糟的一种方法吧.
一个用户多张图片,即按照数据库设计规范,是一对多的关系,应该设计为两张表为好,一是用户表,二是图片表.
多时,修改编辑或是删除,都好处理.
你这个问题,应该不是很难的问题,才对.
我是新手..请多多指教..你的意思是说:新建两个表,然后采取是一对多,可我不知用程序实现?
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="dzj.aspx.vb" Inherits="a.dzj" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>Vs_User_update</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="Visual Basic .NET 7.1" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<LINK href="../Style.css" type="text/css" rel="stylesheet">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<FONT face="宋体">
<H3>图片样本:</H3>
<asp:textbox id="TxtUser" runat="server" Visible="False" Width="260px" BorderStyle="Groove" ReadOnly="True"
BackColor="#FFC0FF"></asp:textbox>
<TABLE class="table" id="Table1" cellSpacing="1" cellPadding="5" width="600" border="0">
<TR class="tdtr">
<TD colSpan="2"><FONT face="宋体"> </FONT><FONT face="宋体">
<asp:DataGrid id="MyDataGrid" runat="server" Width="272px" Height="350px" PageSize="1" AllowPaging="True">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<asp:Image id="Image1" runat="server" Width="600px" ImageUrl='<% #DataBinder.Eval(Container,"DataItem.hydzj") %>'>
</asp:Image>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle Mode="NumericPages"></PagerStyle>
</asp:DataGrid>
</FONT>
</TD>
</TR>
</TABLE>
</FONT>
<asp:LinkButton id="btnFirst" onclick="PagerButtonClick" runat="server" CommandArgument="0">最首页</asp:LinkButton><FONT face="宋体"> </FONT>
<asp:LinkButton id="btnPrev" onclick="PagerButtonClick" runat="server" CommandArgument="prev">前一页</asp:LinkButton><FONT face="宋体"> </FONT>
<asp:LinkButton id="btnNext" onclick="PagerButtonClick" runat="server" CommandArgument="next">下一页</asp:LinkButton><FONT face="宋体"> </FONT>
<asp:LinkButton id="btnLast" onclick="PagerButtonClick" runat="server" CommandArgument="last">最后页</asp:LinkButton></form>
</body>
</HTML>
Imports System.Data
Imports System.Web.UIPublic Class dzj
Inherits System.Web.UI.Page#Region " Web 窗体设计器生成的代码 " '该调用是 Web 窗体设计器所必需的。
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent() End Sub
Protected WithEvents MyDataGrid As System.Web.UI.WebControls.DataGrid
Protected WithEvents btnFirst As System.Web.UI.WebControls.LinkButton
Protected WithEvents btnPrev As System.Web.UI.WebControls.LinkButton
Protected WithEvents btnNext As System.Web.UI.WebControls.LinkButton
Protected WithEvents btnLast As System.Web.UI.WebControls.LinkButton
Protected WithEvents TxtUser As System.Web.UI.WebControls.TextBox '注意: 以下占位符声明是 Web 窗体设计器所必需的。
'不要删除或移动它。
Private designerPlaceholderDeclaration As System.Object Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
'不要使用代码编辑器修改它。
InitializeComponent()
End Sub#End Region Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If Not IsPostBack Then Dim strTemp As String
strTemp = Request("us_use") If strTemp = "" Then
TxtUser.Text = Session("Log_user")
Else
TxtUser.Text = strTemp
End If End If Dim sql As String = "select hydzj from dbinduser where us_use='" & TxtUser.Text & "'"
Dim dataset1 As New DataSet
dataset1 = New DataSet("dataset1") Dim ConnectionString As String
ConnectionString = "Server=127.0.0.1.;Database=aa;User Id=sa;Password=1234;" Dim sqlconnection1 As New SqlClient.SqlConnection(ConnectionString)
Dim sqlDataAdapter1 As New SqlClient.SqlDataAdapter(sql, sqlconnection1)
sqlDataAdapter1.Fill(dataset1, "dbIndUser")
sqlDataAdapter1 = Nothing MyDataGrid.DataSource = dataset1
MyDataGrid.DataBind()
sqlconnection1.Close()
sqlconnection1 = Nothing End Sub Sub MyDataGrid_Page(ByVal sender As Object, ByVal e As DataGridPageChangedEventArgs)
Dim startIndex As Integer
MyDataGrid.CurrentPageIndex = 0
startIndex = MyDataGrid.CurrentPageIndex * MyDataGrid.PageSize
MyDataGrid.CurrentPageIndex = e.NewPageIndex
MyDataGrid.DataBind()
End Sub
Sub PagerButtonClick(ByVal sender As Object, ByVal e As EventArgs) Dim arg As String = sender.CommandArgument Select Case arg
Case "next"
If (MyDataGrid.CurrentPageIndex < (MyDataGrid.PageCount - 1)) Then
MyDataGrid.CurrentPageIndex = 1
End If
Case "prev"
If (MyDataGrid.CurrentPageIndex > 0) Then
MyDataGrid.CurrentPageIndex -= 1
End If
Case "last"
MyDataGrid.CurrentPageIndex = (MyDataGrid.PageCount - 1)
Case Else
'page number
MyDataGrid.CurrentPageIndex = System.Convert.ToInt32(arg)
End Select
MyDataGrid.DataBind() End Sub
End Class
你可以打开看看..
1:改造数据库;//可以接受么?
2:用DataList;//可以接受么?
我个人感觉:
1:如果你的页面想显示一个人的信息,而这个人可以有多张图片的话,搂住可以将这个图片将要显示的位置写上:相关图片,然后将这个相关图片加上连接,点击之后,去查询这个人的图片,如果再点图片,再显示详细图片。如果是这种思路的话,那么改造数据库就会使这个步骤非常容易。
2:如果根据上步来做的话,DataList,不会吗?非常容易。
显示简单不多说,
用按钮分页和图片分页是一样的.