编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛  
全能 ASP / PHP / ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
 18 12
发新话题
打印

急!急!急!使用 DataList 控件,如何将图片绑定到数据库的表中

急!急!急!使用 DataList 控件,如何将图片绑定到数据库的表中

有两张表,一张是相册表:album
Sno(用户)    album_id(相册ID)    album_name(相册名字) ...
张三              1                        aa
张三              2                        bb
张三              3                        cc
李四              4                        dd
王五              5                        ee
王五              6                        ee

另一张表:photos
  album_id         photo_id     photo_url  ....
    1                1            photos/01.jpg
    1                2            photos/02.jpg
    1                3            photos/03.jpg
    2                4            photos/04.jpg
    2                5            photos/05.jpg
    3                6            photos/06.jpg
    3                7            photos/07.jpg
    3                8            photos/08.jpg

下面是ASP.NET的XML文档,我使用的是DataList控件绑定数据:

<asp:DataList ID="DataList1" runat="server" CellSpacing="30" RepeatColumns="3">
                    <ItemTemplate>
                    <table>
                        <tr>
                          <td style="width: 188px; height: 146px" background="图片/相册背景.jpg">
                           <asp:Image ID="Image1" runat="server" Height="100" Width="100"  ImageUrl='<%#Eval ("photo_url")%> '/>
                          </td>
                        </tr>
                        <tr>
                          <td style="width: 188px; height: 25px">
                          <asp:Label ID="Label1" runat="server" Text=""><%#Eval("album_name")%></asp:Label>
                          </td>
                        </tr>
                    </table>
                    
                    </ItemTemplate>
                    </asp:DataList>

下面是ASP。net 的代码页,实行对DataList的分页,要怎么对它进行处理,使它即能分页,又能显示出,每一个相册里面的第一张图片,让它做为相册的前景图片显示出来(就像QQ空间里的相册一下样,点击相册就能看到里面的所有照片)

public partial class myspace : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            this.num.Text = "1";
            this.myphotos();
        }
    }
    private void myphotos()
    {
        int curPage = (Convert.ToInt32(this.num.Text));
        SqlConnection conn = new SqlConnection("server=.;database=photo_Data;Integrated Security=SSPI");
      
        SqlDataAdapter da = new SqlDataAdapter("select a.album_id,a.album_name,a.album_id,b.photo_url from album  as a , photos as b where a.album_id=b.album_id", conn);
        DataSet ds = new DataSet();
        da.Fill(ds, "album");
        
        PagedDataSource ps = new PagedDataSource();
        ps.DataSource = ds.Tables["album"].DefaultView;
        ps.AllowPaging = true;
        ps.PageSize = 6;
        ps.CurrentPageIndex = curPage - 1;
        this.previous.Enabled = true;
        this.next.Enabled = true;

        if (curPage == 1)
        {
            this.previous.Enabled = false;
        }
        if (curPage == ps.PageCount)
        {
            this.next.Enabled = false;
        }
        this.DataList1.DataSource = ps;
        this.DataList1.DataBind();
    }

    protected void previous_Click(object sender, EventArgs e)
    {
        this.num.Text = Convert.ToString(Convert.ToInt32(this.num.Text) - 1);
        this.myphotos();
    }
    protected void next_Click(object sender, EventArgs e)
    {
        this.num.Text = Convert.ToString(Convert.ToInt32(this.num.Text) +1);
        this.myphotos();
    }


  请各位高手多多指教。。。。谢谢。。。。

[ 本帖最后由 寒行 于 2008-6-29 10:42 编辑 ]

TOP

你现在的问题是什么啊?

TOP

这就看你怎么筛选数据了
Flying without wings

TOP

回复 2# 贝蕾 的帖子

就是怎么把XML中 DataList控件的 Image地址绑定到数据库的图片地址上,而且我是想让它像QQ空间里的相册一样。在网页里,显示每个相册的第一照片。


就是让这条语怎么对数据库进行筛选,然后得到每一个相册的第一条记录的信息 SqlDataAdapter da = new SqlDataAdapter("select a.album_id,a.album_name,a.album_id,b.photo_url from album  as a , photos as b where a.album_id=b.album_id", conn);
  谢谢了

TOP

回复 3# 冰彩虹 的帖子

我就是因为不会筛选数据,所以发贴,我也问过老师了,他们也不懂,帮帮我。。。急。。。谢谢。。。。

TOP

回复 3# 冰彩虹 的帖子

版主。。要是上线的话,麻烦你用QQ通知我一下。。。我真的很急需。。。
QQ;316728849   谢谢了。。。。

TOP

各位高手快帮帮我啊。。。。

我对数据库是在筛选不出来,哪位高手快帮我筛选一下。。。

TOP

top 1 不就是第一条记录吗?
SqlDataAdapter da = new SqlDataAdapter("select top 1 a.album_id,a.album_name,a.album_id,b.photo_url from album  as a , photos as b where a.album_id=b.album_id", conn);
【http://bcsn.5d6d.com】编程少年基地提供在线视频教程、电子图书、程序源码等众多资源  近期将推出第六届齐鲁大学生软件设计大赛参赛队员及评委老师的寄语专题

TOP

回复 8# hebingbing 的帖子

但是这样只能提取出一个相册的第一条数据,不能提取全部相册的第一条数据
按上面那条语句得到的数据是:
album_id  album_name   photo_url
  1          aa        photos/01.jpg

但我想要的结果是每个相册的第一条记录,那就是:
album_id   album_name   photo_url
   1           aa       photos/01.jpg
   2           bb       photos/04.jpg
   3           cc       photos/06.jpg

我提取不出来,麻烦版主帮帮忙!!!

TOP

SqlDataAdapter da = new SqlDataAdapter("select (distinct a.album_id),b.album_id,a.album_name,b.photo_url from album  as a , photos as b where a.album_id=b.album_id", conn);
试试这样行不行

[ 本帖最后由 hebingbing 于 2008-6-29 16:27 编辑 ]
【http://bcsn.5d6d.com】编程少年基地提供在线视频教程、电子图书、程序源码等众多资源  近期将推出第六届齐鲁大学生软件设计大赛参赛队员及评委老师的寄语专题

TOP

 18 12
发新话题