CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  ASP

大家请过来看看 我急着完成作业 可报错!--在线等

楼主itcoco(椰子)2002-12-05 01:49:53 在 Web 开发 / ASP 提问

我用ASP做的新闻发布系统     ,代码绝对没错,因为经过几天测试发现当   我从后台更新完一次内容是   再返回首页   就报错:  
       
  本页无法显示    
  试图访问的网页出现问题,无法显示。    
   
  --------------------------------------------------------------------------------  
   
  请尝试以下方法:  
   
  单击   刷新按钮或者梢候再试。  
   
  打开   localhost   主页,然后查找与所需信息相关的链接。    
  HTTP   500.100   -   内部服务器错误   -   ASP   错误  
  Internet   信息服务  
   
  --------------------------------------------------------------------------------  
   
  技术信息(适用于支持人员)  
   
  错误类型:  
  ADODB.Field   (0x80020009)  
  /index.asp  
   
   
  浏览器类型:  
  Mozilla/4.0   (compatible;   MSIE   5.01;   Windows   NT   5.0)    
   
  页:  
  GET   /index.asp    
   
  时间:  
  2002年12月5日,   1:36:34    
   
   
  详细信息:  
  Microsoft   支持    
  ----------------------------    
      上次也出现过这种情况,难为了我一天   后来我从建了一个数据库里的一个表首页就可以打开,不报错了,源代码一点不用改动。  
  我今天打算往表里填写有意仪的内容   就更新了网站   结果在打开首页就出现上述错误。我的网站共3个表,我试着只显示其中一个表的内容就可以   而且是只那个一个可以其他的都不行,  
  我想问这是什么原因引起的,  
   
  错误提示说是     HTTP   500.100   -   内部服务器错误   -   ASP   错误     是我的iis有问题   还是我的access坏了?  
  还是我的代码真的有问题?可是在我没有更新内容之前是完全没有问题的压!!!!  
   
   
   
  大家谁知道请帮帮我!!  
  我太无助了     现在只想重装系统了!!!!!!!  
   
  问题点数:40、回复次数:11Top

1 楼yaca(神采飞扬)回复于 2002-12-05 02:01:02 得分 0

不用啊,  
  是你的程序问题。  
  你把你代码贴出来看看。Top

2 楼yaca(神采飞扬)回复于 2002-12-05 02:07:01 得分 0

我知道了,肯定是你输入了'、"(单引号,双引号)等字符,而你的程序又没有加字符判断,所以出错的。Top

3 楼itcoco(椰子)回复于 2002-12-05 02:14:11 得分 0

楼上的   你说的对么?我感觉不用把   因为我只是显示标题和新闻的时间而已  
  下边是我的代码  
   
  <%set   rs=server.createobject("adodb.recordset")  
      sql="select   *   from   cj   order   by   time   desc"  
      rs.open   sql,cn,3,3%>  
                              <%if   not   rs.eof   then%>  
                              <%dim   i,max  
      if   rs.recordcount<8   then  
        max=rs.recordcount  
      else   max=8  
      end   if%>  
                              <%for   i=1   to   max  
      title=trim(rs("title"))  
      ctitle=left(title,20)  
    %>  
                              <tr>    
                                  <td   width="70%"   height="12"><font   color="#3399CC"   size="1">□</font><A    
                                      href="showrm.asp"?id=<%=rs("id")%>  
                                      target=_blank><%=ctitle%></A>   ...</td>  
                              </tr>  
                              <%rs.movenext    
      next%>  
                              <%else%>  
                              <tr>    
                                  <td     height="14">   还没有新闻!   </td>  
                              </tr>  
                              <%end   if%>Top

4 楼yaca(神采飞扬)回复于 2002-12-05 02:30:35 得分 40

ctitle=left(title,20)  
  这里错,你还没判断title的长度呢。怎么能随便就截取呢?  
  还有,假如别人输入英文,你这个截取前20个字符就变得很短了,很不好看。  
  用我的。  
  ctitle=strLeft(title,18)  
   
  <%  
  Function   strLength(varstr)                
        If   varstr<>""   Then  
        intLen   =   Len(varstr)  
        For   i   =   1   To   Len(varstr)  
  varchar   =   Mid(varstr,   i,   1)  
  varasc   =   Asc(varchar)  
  If   varasc   <   0   Then  
                      varasc   =   varasc   +   65535  
  End   If  
                      If   varasc   >   255   Then  
                      intLen   =   intLen   +   1  
                      End   If  
        Next  
      strLength   =   intLen  
        End   If  
  End   Function  
  %>  
  <%  
  Function   strLeft(varstr,intlength)                
        If   varstr<>""   Then  
        intLen   =   intlength    
        For   i   =   1   To   Len(varstr)  
  varchar   =   Mid(varstr,   i,   1)  
  varasc   =   Asc(varchar)  
  If   varasc   <   0   Then  
                      varasc   =   varasc   +   65535  
  End   If  
        vstr   =   vstr&varchar  
                      If   varasc   >   255   Then  
        intLen   =   intLen   -   2  
                      Else  
        intLen   =   intLen   -   1              
                      End   If  
  If   intLen   <   1   Then  
  Exit   For  
  End   If  
        Next  
      strLeft   =   vstr  
        End   If  
  End   Function  
  %>  
  <%  
  Function   sublen(exp,intlen)  
  if   strLength(exp)>intlen+3   then  
  sublen=strLeft(exp,intlen)&"..."  
  else  
  sublen=exp  
  end   if  
  end   Function  
  %>  
   
  Top

5 楼itcoco(椰子)回复于 2002-12-05 02:37:55 得分 0

楼上想的真周道  
  除此之外   我的代码还有什么毛病么Top

6 楼yaca(神采飞扬)回复于 2002-12-05 02:38:05 得分 0

小伙子,问题解决没有?我要sleep了。马上就要asleep了。  
  now(),   sleeping.......Top

7 楼yaca(神采飞扬)回复于 2002-12-05 02:40:22 得分 0

估计就是这里错,  
  其他的看不出来了,我要调试才知道的。Top

8 楼itcoco(椰子)回复于 2002-12-05 02:55:18 得分 0

多谢Top

9 楼yaca(神采飞扬)回复于 2002-12-05 03:06:09 得分 0

不谢,送分过来就OK了。  
  早点睡,别做太晚了,身体重要啊。  
  小伙子,等你到我这个年龄,你就知道了的。  
  Top

10 楼itcoco(椰子)回复于 2002-12-05 13:57:18 得分 0

楼上的   我觉得还不是"(单引号,双引号)等字符,而没有加字符判断的原因,  
  我把代码来会复制几遍   弄弄表什么的现在基本上还是原来的代码   就好了  
  不过时不时还报错Top

11 楼itcoco(椰子)回复于 2002-12-05 13:59:10 得分 0

给你了20分   先不节贴Top

相关问题

  • 作业完成 :)
  • 在线程中使用CSOCKET报错,Y?
  • 在线求教:ClientSocket1->Socket->SendText( String ) 报错
  • 开启线程,编译报错……
  • CString 执行报错(在线等)
  • 插入报错,急!!!!!!!!!!!在线等!!!
  • CPU 报错的问题!!在线等啊
  • 报错,怎么改(在线等)
  • 生成PDM时,没报错确不能完成,请高手指点(PD V9.52)
  • 连接Access数据库报错,如何解决?在线等候!

关键词

  • 代码
  • 字符
  • 内容
  • 新闻
  • 信息
  • asp
  • intlen
  • 报错
  • varasc
  • varstr

得分解答快速导航

  • 帖主:itcoco
  • yaca

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo