请高手看看我这段ASP代码中response.redirect为啥不起作用?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请高手看看我这段ASP代码中response.redirect为啥不起作用?相关的知识,希望对你有一定的参考价值。

<% @ LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="inc/conn.asp"-->
<!--#include file="inc/config.asp"-->
<!--#include file="inc/md5.asp"-->
<%
dim struserid
dim struserpwd
dim stryanzhengma,stryzm
dim strSQL
struserid=trim(request.form("user"))
struserpwd=trim(request.form("pass"))
stryanzhengma=request.form("yanzhengma")
stryzm=Cstr(session("yanzhengma"))
if struserid="" or struserpwd=""then
FoundErr=true
ErrMsg=ErrMsg & "<br><li>用户名和密码不能为空!!!</li>"
end if
if stryanzhengma="" or stryanzhengma<>stryzm then
FoundErr=true
ErrMsg=ErrMsg & "<br><li>您输入的确认码和系统产生的不一致,请重新输入。</li>"
end if
if FoundErr=true then
call WriteErrMsg()
response.End()
end if
if stryanzhengma=stryzm then
'------ struserpwd=md5(struserpwd)
set rs=server.createobject("adodb.recordset")
strSQL="select * from admin where username='"&struserid&"' and password='"&struserpwd&"'"
' rs.cursortype=adopenkeyset
rs.open strSQL,conn'------,adOpenKeyset,adLockOptimistic,
if rs.BOF and rs.EOF then
FoundErr=True
ErrMsg=ErrMsg & "<br><li>用户名或密码错误!!!</li>"
call WriteErrMsg()
rs.close
set rs=nothing
call Closeconn()
else
session.contents("userid")=struserid
session.contents("userpwd")=struserpwd
session.timeout=sessiontimeout
rs.close
set rs=nothing
call Closeconn()
response.Redirect( "news.asp" )
end if
end if
sub WriteErrMsg()
dim strErr
strErr=strErr & "<html><head><title>错误信息</title><meta http-equiv='Content-Type' content='text/html; charset=gb2312'>" & vbcrlf
strErr=strErr & "</head><body>" & vbcrlf
strErr=strErr & "<table cellpadding=2 cellspacing=1 border=0 width=400 class='border' align=center>" & vbcrlf
strErr=strErr & " <tr align='center'><td height='22' class='title'><strong>错误信息</strong></td></tr>" & vbcrlf
strErr=strErr & " <tr><td height='100' class='tdbg' valign='top'><b>产生错误的可能原因:</b><br>" & errmsg &"</td></tr>" & vbcrlf
strErr=strErr & " <tr align='center'><td class='tdbg'><a href='Admin_Login.asp'><< 返回登录页面</a></td></tr>" & vbcrlf
strErr=strErr & "</table>" & vbcrlf
strErr=strErr & "</body></html>" & vbcrlf
response.write strErr
end sub
%>

补充:1、在登陆页面输入错误密码,能够返回密码错误的提示。
2、在登陆页面输入正确密码,则不能显示"news.asp",而"news.asp"可以单独打开。
3、将response.redirect换成response.write "123456"则可以显示123456 。
请各位高手指教

Closeconn()
这个过程你没有写出
有可能照成错误
你将换成response.write "123456"则可以显示123456
说明你的程序可以运行到这里
那么我认为就是你的response.redirect 路径错误了
为了证实这两个观点哪个正确
你可以测试一下,一加上或删除掉这个过程
二,看正确登陆后是显示的原来的页面还是显示的找不到网页的页面,如果是后者就说明你的路径错误了呵呵,要注意跳转路径啊
参考技术A 关注一下

请高手帮忙---asp.net 如何添加,修改,删除记录

我使用的是 c# +sql server

1.数据库名 database1 ,表名 table1
字段 id varchar
name varchar
password varchar

请高手帮忙用:c#+sql 写段代码
实现对数据库表的增删改工作,如正确,可多加分
非常感谢zcy_bzp这位高手 ,我在您写的代码上稍作改动了一下,您写的
DB类中好象都是静态方法,直接调用就行,不需要建立对象.

分数可以给您,还可以再加分给您,只是还有问题想请教下您,
由于我是初学ASP.NET ,有碰到这样一个问题:
.我在VS.NET里编了个程序,调试运行成功后,生成网站
2.将程序发到了e:\web 下
3.将IIS配置的虚拟目录也配置成e:\web
4.打开dreamweaver,设置站点,运行主文件后出错

出错代码为:
无法显示 XML 网页
无法使用 XSL 样式表检视 XML 输入。请更正错误,然后按 重新整理按钮,或者稍后再试一次。

名称的开头使用无效的字元。处理资源 'http://localhost/Default.aspx' 发生错误。第 1 行, 位置 2

<%@ page language="C#" autoeventwireup="true" inherits="_Default, App_Web_v11jvl68.dll" %>
-^
如果您能回答的上来,我再加20分,或更多都可以

参考技术A 你用的是asp.net+sql是吧?
你问的是SQL语句,还是在asp.net的句子?
---------------------------------------------
更新的:private void Dgd_course_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)


string strUpdate="update course set ";//需要更新的字段
strUpdate+="Course_name='"+((TextBox)e.Item .Cells [1].Controls [0]).Text+"'";
strUpdate+=",Course_period="+((TextBox)e.Item .Cells [2].Controls [0]).Text;

strUpdate+=",Course_credit="+((TextBox)e.Item .Cells [3].Controls [0]).Text;

strUpdate+=",Course_kind='"+((DropDownList)e.Item .Cells [4].FindControl ("DropDownList1")).SelectedItem .Value +"'";
strUpdate+=",Course_describe='"+(((TextBox)e.Item .Cells [5].Controls [0]).Text).ToString ()+"'";

strUpdate+=" where Course_id like '"+Dgd_course.DataKeys[e.Item .ItemIndex ].ToString ()+"'";

SqlCommand cm=new SqlCommand(strUpdate,cn);

SqlDataAdapter da=new SqlDataAdapter (strUpdate,cn);
cm.CommandText =strUpdate;
cm.Connection .Open ();
try

cm.ExecuteNonQuery ();
Response.Write ("<script language='javascript'> alert('更新记录成功!')</script>");
Dgd_course.EditItemIndex =-1;

catch

Response.Write ("<script language='javascript'> alert('更新记录失败!')</script>");


cm.Connection .Close ();

if(flag==false)


BindGrid();

else


BindGrid_search();



---------------------------------------
删除的:
private void Dgd_course_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)

string strsql="delete from course where Course_id like '"+Dgd_course.DataKeys[e.Item .ItemIndex ].ToString ()+"'";
SqlCommand cm=new SqlCommand (strsql,cn);
cm.Connection .Open ();

try

cm.ExecuteNonQuery ();

Lbl_note.Text ="删除成功!";
Dgd_course.EditItemIndex =-1;

catch

Lbl_note.Style ["color"]="red";
Lbl_note.Text ="删除失败!";
Lbl_note.Style ["color"]="green";

cm.Connection .Close ();
if(flag==false)


BindGrid();

else


BindGrid_search();


-------------------------------------
添加的:
private void Button1_Click(object sender, System.EventArgs e)

if((Tbx_id.Text !="")&(Tbx_name.Text!=""))


string strCommand="select count(*) from course where(Course_id like '"+Tbx_id.Text +"')";
SqlCommand cm=new SqlCommand (strCommand,cn);

//查看课程编号是不是已经存在
int flag=(int)cm.ExecuteScalar ();
cm.Connection .Close ();

if(flag==0)

//将课程信息添加到表中
string insCmd="insert course(Course_id,Course_name,Course_period,Course_credit,Course_kind,Course_describe)";
insCmd+=" values('"+Tbx_id.Text +"','"+Tbx_name.Text+"','"+TextBox3.Text+"','"+TextBox4.Text+"','"+DropDownList1.SelectedItem.Value +"','"+ TextBox5.Text+"')";

SqlCommand myIns=new SqlCommand (insCmd,cn);
myIns.Connection .Open ();
myIns.ExecuteNonQuery ();
myIns.Connection .Close ();
Label2.Text ="*成功添加 "+Tbx_id.Text +" "+Tbx_name.Text;

Tbx_id.Text="";
Tbx_name.Text="";
TextBox3.Text="";
TextBox4.Text="";
TextBox5.Text="";


else


Response.Write ("<script language='javascript'> alert('课程编号重复!请检查后重新输入!')</script>");





else

Response.Write ("<script language='javascript'> alert('课程编号或课程名称不能为空!')</script>");


---------------------------
这是我以前写过的一个关于成绩管理的。你挑你需要的看。
参考技术B //数据库操作类
public class DB

//创建数据库连接字符串
private static string connStr="server=.;uid=sa;pwd=;database=table1";
private static SqlConnection getConn()

return new SqlConnection(connStr);

//完成所有的单向操作insert update delete
public static void ExecSql(string sql)

//创建连接对象
SqlConnection conn=getConn();
//打开连接
conn.Open();
//创建数据库操作对象。。
SqlCommand cmd=new SqlCommand(sql,conn);
//执行操作
cmd.ExecuteNonQuery();
//关闭连接
conn.Close();

//完成所有的双向操作select
public static DataSet getDs(string sql)

//创建连接对象
SqlConnection conn=getConn();
//打开连接
conn.Open();
//创建数据库操作对象
SqlCommand cmd=new SqlCommand(sql,conn);
//创建桥接器对象
SqlDataAdapter ada=new SqlDataAdapter(cmd);
//创建存储查询结果对象
DataSet ds=new DataSet();
//将数据存储到记过对象中
ada.Fill(ds);
//关闭连接
conn.Close();
//返回结果集
return ds;



//在页面上调用:
String Id="" //ID
String name="" //name
String password="" //password
String sql_Exl="";//你需要执行的insert update delete 语句,,这该会写吧
DB db=new Db();
////完成所有的单向操作insert update delete
db.ExecSql(sql);
//完成所有的双向操作select
String sql_GetDs=""//需要执行的Select语句
db.DataSet(sql);

以上看了如果还是不会写的话。。建议你改行本回答被提问者采纳
参考技术C B/S 还是 C/S 的?

以上是关于请高手看看我这段ASP代码中response.redirect为啥不起作用?的主要内容,如果未能解决你的问题,请参考以下文章

请传奇脚本高手看看

HTML代码高手进!帮在下看看这段代码里面怎么修改轮播时间,默认是4秒。

请高手帮忙---asp.net 如何添加,修改,删除记录

麻烦bat命令高手们,帮我看看,下面这段代码到底哪里有问题,为啥运行的时候,总提示echo 处于关闭状态

asp.net (C#) 平台下如何加密用户登录密码?请高手请教。

ASP.NET编译成功后,为啥有些功能不会执行?麻烦高手解答!