1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

请教一个ASP问题,急~~~~

本帖由 leehui19832006-03-01 发布。版面名称:后端开发

  1. leehui1983

    leehui1983 New Member

    注册:
    2006-02-26
    帖子:
    130
    赞:
    0
    请问各位大侠我做了一个显示新闻的小程序,想做点击标题显示内容.是根据id来显示显示文章是
    shownews.asp?id=id号
    可是总是显示第一条的内容,请指点.
    shownews.asp代码:
    <!--#include file="conn.asp"-->
    <%
    set rs=server.CreateObject("ADODB.Recordset")
    sql="select * from news_comment"
    rs.open sql,conn,1,3
    %>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>查看新闻</title>
    </head>

    <body topmargin="0">
    <!--#include file="head.asp"-->
    <table width="760" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#0099FF">
    <tr>
    <td><table width="760" border="0" align="center" cellpadding="1" cellspacing="1">
    <tr>
    <td bgcolor="#FFFFFF" align="center" class="a"><%=rs("comment")%><br>
    <a href="index.asp">返回</a></td>
    </tr>
    </table></td>
    </tr>
    </table>
    <!--#include file="foot.asp"-->
    </body>
    </html>
     
  2. Ulysses

    Ulysses New Member

    注册:
    2006-02-05
    帖子:
    10,018
    赞:
    16
    你的 SQL 语句取出来的是记录集,而不是单独的一条记录。而且你没有使用循环,自然只显示记录集的第一条。
     
  3. leehui1983

    leehui1983 New Member

    注册:
    2006-02-26
    帖子:
    130
    赞:
    0
    能不能给个代码啊,谢谢
     
  4. Ulysses

    Ulysses New Member

    注册:
    2006-02-05
    帖子:
    10,018
    赞:
    16
    改写 SQL 语句,加上 WHERE 条件限定。

    sql="select * from news_comment WHERE id = " & id & ";"
     
  5. leehui1983

    leehui1983 New Member

    注册:
    2006-02-26
    帖子:
    130
    赞:
    0
    还是不行啊,老是报错,说数据类型不匹配
    <!--#include file="conn.asp"-->
    <%
    set rss=server.CreateObject("ADODB.Recordset")

    sql="select * from news_comment WHERE id = '" &id& "'"
    rss.open sql,conn,1,3
    %>
     
  6. Ulysses

    Ulysses New Member

    注册:
    2006-02-05
    帖子:
    10,018
    赞:
    16
    SQL 语句中后面那个 id 变量是获取的 QueryString 参数。

    你必须确保获取的参数 id 的内容是数字类型。
     
  7. leehui1983

    leehui1983 New Member

    注册:
    2006-02-26
    帖子:
    130
    赞:
    0
    可是怎样获取标题ID呢?shownews.asp?id=id号 如何让SQL语句获取这个id号?
     
  8. woshidianpa

    woshidianpa New Member

    注册:
    2005-11-08
    帖子:
    89
    赞:
    1
    <a herf=shownew.asp?id=<%=rs(id)%>>新闻标题</a>

    id=request("id") '这个就是获取点击后的ID值

    sql="select * from news_comment where id="&id&"" '然后这个才根据返回的值提记录显示出来

    这样说不知道你明不明白..
     
  9. leehui1983

    leehui1983 New Member

    注册:
    2006-02-26
    帖子:
    130
    赞:
    0
    明白可是还是报错,看下我的部分程序
    <%
    set rss=server.CreateObject("ADODB.Recordset")
    newsid=request("id")
    sql="select * from news_comment WHERE id = '" &newsid& "'"
    rss.open sql,conn,1,3
    %>
    错误类型:
    Microsoft JET Database Engine (0x80040E07)
    标准表达式中数据类型不匹配。
    /news/shownews.asp, 第 6 行


    请问该怎么解决?谢谢
     
  10. Tameway

    Tameway New Member

    注册:
    2005-09-06
    帖子:
    1,286
    赞:
    8
    sql="select * from news_comment WHERE id = " &newsid

    这样写
     
  11. leehui1983

    leehui1983 New Member

    注册:
    2006-02-26
    帖子:
    130
    赞:
    0
    解决了,多加了单引号,呵呵,谢谢大家