Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 11 kết quả

Đề tài: Làm sao để hiển thị ảnh mặc định khi chưa cập nhật trong csdl

  1. #1
    Ngày gia nhập
    04 2011
    Bài viết
    17

    Mặc định Làm sao để hiển thị ảnh mặc định khi chưa cập nhật trong csdl

    Chào các bạn !
    Mình muốn khi mà trong csdl ảnh của sp chưa đc nhập thì nó sẽ hiển thị ảnh mặc định của mình vào
    Các bạn giúp mình nhé .

  2. #2
    Ngày gia nhập
    12 2010
    Bài viết
    136

    Visual C# Code:
    1. <img src="image.gif" onerror="/images/1.gif" />

    1.gif là ảnh mặc định

  3. #3
    Ngày gia nhập
    04 2011
    Bài viết
    17

    Thank bạn !
    Mình đã thử rùi không đc .
    Mọi người còn cách nào nữa không giúp mình với .

  4. #4
    Ngày gia nhập
    01 2009
    Bài viết
    165

    Code:
    <asp:Image ImageUrl='<%# Display((string)Eval("Ten_Field_Hinh_Anh"))' />
    trong code behind bạn thêm hàm :
    Code:
    public string Display(string image)
    {
    if(image=="")
    {
    return "url cua hinh mac dinh";
    }
    return image;
    }

  5. #5
    Ngày gia nhập
    04 2011
    Bài viết
    17

    Bạn viết rõ hơn chút cho mình xem return url ảnh mặc định thế nào.
    Mình đã làm như thế này nhưng chưa dc:

    <asp:Image runat="server" src='<%# Display((string)Eval("pic","~/imagesP/{0}")) %>' />
    Behind:
    public string Display(string image)
    {
    if (image == "")
    {
    return= "images/backgioithieu.png";
    }
    return image;
    }
    Xem mình làm đúng chưa nhé .

  6. #6
    Ngày gia nhập
    04 2009
    Bài viết
    175

    Mặc định Làm sao để hiển thị ảnh mặc định khi chưa cập nhật trong csdl

    Trích dẫn Nguyên bản được gửi bởi quocvanict Xem bài viết
    Bạn viết rõ hơn chút cho mình xem return url ảnh mặc định thế nào.
    Mình đã làm như thế này nhưng chưa dc:

    <asp:Image runat="server" src='<%# Display((string)Eval("pic","~/imagesP/{0}")) %>' />
    Behind:
    public string Display(string image)
    {
    if (image == "")
    {
    return= "images/backgioithieu.png";
    }
    return image;
    }
    Xem mình làm đúng chưa nhé .
    theo mình thì bạn nên sửa chỗ này isplay((string)Eval("pic","~/imagesP/{0}"))
    ====================>Display((string)Eval("colImag es"))
    colImages: Tên cột của bảng trong csdl (vd: SanPham(id,tenSP,colImages) )
    bạn thử xem thế nào nhé!

  7. #7
    Ngày gia nhập
    01 2009
    Bài viết
    165

    Trích dẫn Nguyên bản được gửi bởi quocvanict Xem bài viết
    Bạn viết rõ hơn chút cho mình xem return url ảnh mặc định thế nào.
    Mình đã làm như thế này nhưng chưa dc:

    <asp:Image runat="server" src='<%# Display((string)Eval("pic","~/imagesP/{0}")) %>' />
    Behind:
    public string Display(string image)
    {
    if (image == "")
    {
    return= "images/backgioithieu.png";
    }
    return image;
    }
    Xem mình làm đúng chưa nhé .
    Bạn có thể sửa
    Code:
     if(image == "")
    thành
    Code:
    if(image == "~/imagesP/")
    trong code behind là được.Cách làm của bạn xiaoku cũng đúng nhưng dựa vào đoạn code của bạn mình đoán là bạn ko lưu đường dẫn của ảnh mà chỉ lưu tên ảnh trong csdl vì vậy nếu làm theo cách của xiaoku thì sẽ ko hiển thị được ảnh.Thông thường người ta chỉ lưu tên file ảnh chứ ko lưu đường dẫn ảnh trong csdl.

  8. #8
    Ngày gia nhập
    04 2009
    Bài viết
    175

    Trích dẫn Nguyên bản được gửi bởi kimduquan Xem bài viết
    Bạn có thể sửa[CODE] if(image == "")Cách làm của bạn xiaoku cũng đúng nhưng dựa vào đoạn code của bạn mình đoán là bạn ko lưu đường dẫn của ảnh mà chỉ lưu tên ảnh trong csdl vì vậy nếu làm theo cách của xiaoku thì sẽ ko hiển thị được ảnh.Thông thường người ta chỉ lưu tên file ảnh chứ ko lưu đường dẫn ảnh trong csdl.
    UHm đúng là mình thường làm là lưu luôn cả đường dẫn vào csdl. Bạn có thể giải thích giúp mình xem lưu đường dẫn ảnh hay lưu tên ảnh vô csdl cách nào tốt hơn, vì sao? Vì lâu nay đối với ảnh là mình lưu luôn đường dẫn ko ah. THANKS BẠN TRưỚC nhé

  9. #9
    Ngày gia nhập
    01 2009
    Bài viết
    165

    Theo mình thì không nên lưu đường dẫn chỉ lưu tên ảnh thôi.Còn tại sao thì như vậy sẽ tách biệt được sự phụ thuộc giữa cơ sở dữ liệu với hệ thống tập tin của server, giúp cho việc quản lý tập tin hình ảnh được linh hoạt hơn,sau này ví dụ như sau này muốn thay đổi thư mục chứa hình ảnh thì ko phải cập nhật lại toàn bộ cơ sở dữ liệu.Ngoài ra chắc cũng còn nhiều lý do khác nữa.

  10. #10
    Ngày gia nhập
    10 2009
    Nơi ở
    Việt Nam
    Bài viết
    359

    Mình cũng thấy rằng nên chỉ lưu tên ảnh vào csdl thôi còn khi cho hiển thị mình cho thêm đường dẫn trước tên ảnh khi load từ csdl ra, việc này rất tiện cho việc thay đổi đường dẫn khi hiển thị nhiều khi các tool hiển thị ảnh lại khác nhau ở đường dẫn ví dụ Tool image đường dẫn ảnh pải thế này chẳng hạn ../images/ảnh.jpg mới hiển thị còn nếu images/ảnh.jpg thì ko hiển thị. trong web mình có thêm phần đó là khi click vào ảnh sản phẩm thì sử dụng js và css để view ảnh (cái này trên mạng có nhiều) thì đường dẫn lại pải là images/ảnh.jpg còn nếu là ../images/ảnh.jpg lại ko hiển thị. Vậy bạn biết tại sao nên lưu tên ảnh vào csdl rồi chứ!
    Còn cho hiển thị ảnh mặc định nếu load lỗi hoặc ko có trong csdl thì đây! bạn tham khảo nhé.
    - Đoạn js để load ảnh:
    Code:
    <script language="javascript">
    	function DisplayDefaultImage(img)
            {
            img.src='ICON/khongcohinh.jpg';
            }
    </script>
    - Đoạn code html. bạn chú ý ở sự kiện Onerrro nhé nó gọi phương thức ở đoạn javascript trên:
    Code:
     <asp:DataList ID="DataListSPNoiBat" runat="server" RepeatColumns="3" 
                RepeatDirection="Horizontal" DataKeyField="SPID">
                <ItemTemplate>
                     <div class="clsanpham">
                        <div class="clhinhanh">                  
                        <a rel="example_group" href='<%#"./ImageSP/"+ Eval("HinhAnh") %>' title='<%# Eval("TenSP") %>'>
                            <asp:Image ID="imgHinhAnh" runat="server" Width="170px" Height="180px"
                                ImageUrl='<%#"ImageSP/"+ Eval("HinhAnh") %>' 
                                onError="DisplayDefaultImage(this)"/></a> 
                         </div>
                        <div class="cltensanpham">
                            <asp:HyperLink ID="hypTenSP" runat="server" 
                                NavigateUrl='<%# Eval("SPID","DetailProduct.aspx?spid={0}") %>'  
                                Text='<%# Eval("Ten_SP") %>' ToolTip='Xem chi tiết'></asp:HyperLink>
                        </div>                
                    </div>
                </ItemTemplate>
         </asp:DataList>
    - Bạn xem đó mình cũng chỉ lưu ảnh vào csdl thôi còn khi hiển thị thì đoạn code trên minh họa cho bạn rồi đó! chúc zui zẻ!
    Muốn thành công thì đừng thất vọng - nhưng nếu có lúc thất vọng thì cứ làm việc trong sự thất vọng đi.

Các đề tài tương tự

  1. ADO.NET Lưu tên người đăng nhập vào 1 colums trong csdl
    Gửi bởi thach719 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 9
    Bài viết cuối: 05-09-2013, 10:10 AM
  2. Kết Nối csdl Access trong C# để kiểm tra việc đăng nhập?
    Gửi bởi kenturo trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 24-11-2010, 08:45 AM
  3. Update csdl trong C# | Cập nhật cơ sở dữ liệu trên C#?
    Gửi bởi icde trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 9
    Bài viết cuối: 08-05-2009, 06:45 PM
  4. Đăng nhập trong C#: Kiểm tra Pass rỗng trong CSDL
    Gửi bởi hvcuongit trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 10-04-2009, 04:18 PM
  5. [Solved]Lấy giá trị lớn nhất trong CSDL
    Gửi bởi katz trong diễn đàn Thắc mắc đại cương Database & Reporting
    Trả lời: 4
    Bài viết cuối: 27-01-2008, 10:57 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn