asp.net登陆代码下载(aspnet)
admin 发布:2023-02-09 18:45 58
今天给各位分享asp.net登陆代码下载的知识,其中也会对aspnet进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、ASP.NET 中,实现download下载,弹出打开和保存对话框,不限制文件大小,跪求实现代码,谢谢了
- 2、asp.net网站怎么跟腾讯qq实现登陆接口的功能啊, 大家帮帮忙说这个是免费的这个代码怎么写啊
- 3、asp.net登陆代码问题
- 4、asp.net登录及注册代码
- 5、ASP.net用三层架构实现简单的用户登录代码
- 6、asp.net(vb) 登录代码
ASP.NET 中,实现download下载,弹出打开和保存对话框,不限制文件大小,跪求实现代码,谢谢了
思路很简单,读取服务器文件路径,然后再保存数据流,下面是实现代码:
(ps:因为要上班,来不及写很多注释,关键的地方加了几句注释哈)
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using YTLib.Basic;
using YTLib.YTDBC;
using System.IO;
using System.Threading;
namespace siteadmin.admin
{
public partial class downfile : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string strSQL = "";
YTNDBObject dbo = new YTNDBObject();
dbo.DataName = "Main";
Page.EnableViewState = false;
if(!IsPostBack)
{
string sid=Request["id"];
if(!YTLib.publicOP.IsNumString(sid)||sid==null)
sid="0";
strSQL = "select * from FileSource where ID=@ID";
dbo.PrepareCommand(strSQL);
dbo.SetCmdIntValue("@ID",int.Parse(sid));
DataTable dt=dbo.QueryData().Tables[0];
string sourceName = (string)dt.Rows[0]["FilePath"];
sourceName.Trim();//消除空格
string filesnames = sourceName.Substring(7, sourceName.Length - 8);
int index= sourceName.LastIndexOf(".");
string extend = sourceName.Substring(index+1);//扩展名
string fullPath = "~/uploaded/" + sourceName;
fullPath = Server.MapPath(fullPath);
//读出该资源的下载次数
int downloadtimes = 0;
downloadtimes = int.Parse(dt.Rows[0]["downloadCounts"].ToString());
Page.Response.Clear();
bool success = ResponseFile(Page.Request, Page.Response, filesnames, fullPath, 1024000);
if (!success) Response.Write("script language=\"javascript\"alert(\"Download file error\");window.location.href=\"../Download.aspx\"/script");
else
{
//记录下载次数
downloadtimes++;
string sqlStr = "update FileSource set downloadCounts=" + downloadtimes + " where ID=@IID";
dbo.PrepareCommand(sqlStr);
dbo.SetCmdIntValue("@IID",int.Parse(sid));
dbo.ExecuteNoQuery();
}
Response.Write("script language=\"javascript\"window.location.href=\"../Download.aspx\"/script");
}
}
public static bool ResponseFile(HttpRequest _Request, HttpResponse _Response, string _fileName, string _fullPath, long _speed)
{
try
{
FileStream myFile = new FileStream(_fullPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
BinaryReader br = new BinaryReader(myFile);
try
{
_Response.AddHeader("Accept-Ranges", "bytes");
_Response.Buffer = false;//不缓冲
long fileLength = myFile.Length;
long startBytes = 0;
double pack = 10240;
//10K bytes
int sleep = 200;
//每秒5次 即5*10K bytes每秒 int sleep = (int)Math.Floor(1000 * pack / _speed) + 1;
if (_Request.Headers["Range"] != null)
{
_Response.StatusCode = 206;
string[] range = _Request.Headers["Range"].Split(new char[] { '=', '-' });
startBytes = Convert.ToInt64(range[1]);
}
_Response.AddHeader("Content-Length", (fileLength - startBytes).ToString());
if (startBytes != 0)
{
//Response.AddHeader("Content-Range", string.Format(" bytes {0}-{1}/{2}", startBytes, fileLength-1, fileLength));
}
_Response.AddHeader("Connection", "Keep-Alive");
_Response.ContentType = "application/octet-stream";
_Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(_fileName, System.Text.Encoding.UTF8));
br.BaseStream.Seek(startBytes, SeekOrigin.Begin);
int maxCount = (int)Math.Floor((fileLength - startBytes) / pack) + 1;
for (int i = 0; i maxCount; i++)
{
if (_Response.IsClientConnected)
{
_Response.BinaryWrite(br.ReadBytes(int.Parse(pack.ToString())));
Thread.Sleep(sleep);
}
else
{
i = maxCount;
}
}
}
catch
{
return false;
}
finally
{
br.Close();
myFile.Close();
}
}
catch
{
return false;
}
return true;
}
}
}
asp.net网站怎么跟腾讯qq实现登陆接口的功能啊, 大家帮帮忙说这个是免费的这个代码怎么写啊
1.需要下载SDK,SDK依赖于Newtonsoft.Json和RestSharp两个程序集,主要是两个类QzoneContext(QQ登陆的上下文数据) 和 QOpenClient (QQ互联API入口)
2.你得去 申请一个账号,会得到一个APP ID和App Key,去填一些资料,还要提交一些资料审核
3.在配置文件web.config加入QQ登陆所需要的一些配置参数
4.在项目中添加上面下载的SDK文件夹中三个引用Newtonsoft.Json.dll、RestSharp.dll和 QConnectSDK.dll,然后再写相关的代码
反正一句话,不是在这上面一句两句能说清的。。。
asp.net登陆代码问题
说明没匹配到啊,输入的用户名或密码不正确撒。
1、检查输入时是否有空格,数据库中存储的是否有空格,
2、检查数据库存储的密码是否是加密后的,
3、你这样直接拼接sql语句,存在SQL注入的安全漏洞!!!
asp.net登录及注册代码
创建两个类调用
(有时代码都正确但还是注册不了,可能是数据表有问题,删除重表建一张)
****************************************person类:
using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
/// summary
///person 的摘要说明
/// /summary
public class person
{
public string uName;
public string uPwd;
public string uSex;
public person()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
}
*********************************************personOperate类
using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
/// summary
///personOperate 的摘要说明
/// /summary
public class personOperate
{
public personOperate()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
public static SqlConnection createConnection()
{
SqlConnection con = new SqlConnection("server=.;database=log;uid=sa;pwd=sa");
return con;
}
public static bool insertOperate(person p)
{
try
{
SqlConnection con =personOperate.createConnection();
con.Open();
SqlCommand cmd = new SqlCommand("insert into www values(@uName,@uPwd,@uSex)", con);
SqlParameter para = new SqlParameter("@uName", SqlDbType.VarChar, 50);
para.Value = p.uName;
cmd.Parameters.Add(para);
para = new SqlParameter("@uPwd", SqlDbType.VarChar, 50);
para.Value = p.uPwd;
cmd.Parameters.Add(para);
para = new SqlParameter("@uSex", SqlDbType.VarChar, 2);
para.Value = p.uSex;
cmd.Parameters.Add(para);
cmd.ExecuteNonQuery();
return true;
}
catch (Exception e)
{
return false;
}
}
}
********************************************注册页面代码
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btgo_Click(object sender, EventArgs e)
{
person p = new person();
p.uName = this.tbUser.Text;
p.uPwd = this.tbPwd.Text;
if (this.rbman.Checked)
{
p.uSex = "男";
}
else
{
p.uSex = "女";
}
if(personOperate.insertOperate(p))
{
Response.Write("注册成功");
}
else
{
Response.Write("失败");
}
Res
注册二代码:
protected void btnsend_Click(object sender, EventArgs e)
{
SqlConnection con = DB.createConnection();
con.Open();
string cmdtext = "insert into newreplay(mname,msubject,mcontent,mphone,madd,mqq,mmail,mhttp,mface,mip,mdatetime,mreplaytime) values(@name,@subject,@content,@phone,@add,@qq,@mail,@http,@face,@ip,@datetime,@datetime)";
SqlCommand cmd = new SqlCommand(cmdtext, con);
cmd.Parameters.Add("@name", SqlDbType.VarChar, 50);
cmd.Parameters["@name"].Value = this.tname.Text;
cmd.Parameters.Add("@subject", SqlDbType.VarChar, 50);
cmd.Parameters["@subject"].Value = this.tsubject.Text;
cmd.Parameters.Add("@content", SqlDbType.Text);
cmd.Parameters["@content"].Value = this.tcontent.Text;
cmd.Parameters.Add("@phone", SqlDbType.VarChar, 50);
cmd.Parameters["@phone"].Value = this.tphone.Text;
cmd.Parameters.Add("@add", SqlDbType.VarChar, 50);
cmd.Parameters["@add"].Value = this.tadd.Text;
cmd.Parameters.Add("@qq", SqlDbType.VarChar, 50);
cmd.Parameters["@qq"].Value = this.tqq.Text;
cmd.Parameters.Add("@mail", SqlDbType.VarChar, 50);
cmd.Parameters["@mail"].Value = this.tmail.Text;
cmd.Parameters.Add("@http", SqlDbType.VarChar, 50);
cmd.Parameters["@http"].Value = this.thttp.Text;
cmd.Parameters.Add("@face", SqlDbType.VarChar, 50);
cmd.Parameters["@face"].Value = this.dface.SelectedValue.ToString();
cmd.Parameters.Add("@ip", SqlDbType.VarChar, 50);
cmd.Parameters["@ip"].Value = GetIP();
cmd.Parameters.Add("@datetime", SqlDbType.DateTime);
cmd.Parameters["@datetime"].Value = DateTime.Now.ToString();
try
{
cmd.ExecuteNonQuery();
con.Close();
Response.Write("scriptalert('发表成功')/script");
this.tadd.Text = "";
this.tcontent.Text = "";
this.thttp.Text = "";
this.tmail.Text = "";
this.tsubject.Text = "";
this.tphone.Text = "";
this.tname.Text = "";
this.tqq.Text = "";
}
catch (Exception error)
{
throw new System.Exception(error.Message);
}
}
登陆:
public partial class LOGIN : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection con = DB.createConnec();
con.Open();
SqlCommand cmd = new SqlCommand("select * from LOGIN where name='" + this.TextBox1.Text + "'and password='" + this.TextBox2.Text + "'", con);
SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
Session["username"] = dr["name"]; //从数据库读出
Session["userpassword"] = dr["password"]; //从数据库读出
if ((int)Session["userpassword"] == 1) //类型要注意 还有一种是SESSION["WWW"].TOSTRING()=="1"; //!=
{
Response.Redirect("TIME.aspx");
}
else if ((int)Session["userpassword"] == 2)
{
Response.Redirect("add.aspx");
}
else
{
Response.Redirect("list.aspx");
}
}
else
{
Response.Write("ksks");
}
con.Close();
}
}
要是可以给我好评好么!我在收集分数
ASP.net用三层架构实现简单的用户登录代码
以一个验证登陆为例子
这里是界面层一般叫UIL
protected void Button1_Click(object sender, EventArgs e)
{
ListUser Users = BLL.GetUserInfo(txtUserName.Text,txtPassword.Text);
if(Users.Length 0)
{
Response.Write("登陆成功");
}
else
{
Response.Write("登陆失败");
}
}
以下是逻辑层代码,业务逻辑层一般叫BLL
public static ListUser GetUserInfo(string user,string password)
{
string newPassword = GetMD5Hash(password); //这里对密码进行加密处理,数据库中存放的是经过MD5加密后的密,业务逻辑层一般都是处理复杂的逻辑.例如加密逻辑
ListUser Users = DAL.GetUserInfo(user,newPassword);
return Users;
}
以下是数据访问层代码,数据访问层一般叫DAL
public static ListUser GetUserInfo(string user,string password)
{
ListUser Users = new ListUser();
string sql = "select * from User where Password = '"+password+"' and User = '"+user+"'"; //写where子句的时候把Password放前面.因为Password经过加密,所以可以防止SQL注入攻击
SqlDataAdapter da = new SqlDataAdapter(sql,"这里是数据库连接字符串");
DataSet ds = new DataSet();
da.Fill(ds);
for(int i=0;ids.Tables[0].Rows.Count;i++)
{
User user = new User(ds.Tables[0].Rows[i]["ID"].ToString(),ds.Tables[0].Rows[i]["User"].ToString(),ds.Tables[0].Rows[i]["Password"].ToString());
Users.Add(user);
}
return Users;
}
还会有一个Model层.叫做模板层.是数据表结构的印射.Model层是共用层,其他三层都要用到.
比如数据库中有张表User,里面有3个字段ID,User,Password
那么在模板层中应该有一个类,数据库中User表的一行对应一个User对象,一张表对应User对象的集合.
public class User
{
string ID;
string User;
string Password;
//重载构造函数
User(string id,string user,string password)
{
this.ID=id;
this.User=user;
this.Password=password;
}
}
asp.net(vb) 登录代码
protected void lkbtLogin_Click(object sender, System.EventArgs e)
{
if(txtVerifyNum.Text.Trim() != Session["SessionAppendNumber"].ToString())
{
oprtb.AlertMsg("输入的验证码错误",Page);
return;
}
DataSet ds = new DataSet();
string sql = "select UserID,Name,DepartID,CompanyID,";
sql = sql+"(select Name from Depart where ((DepartID=UserList.DepartID) and ( CompanyID=UserList.CompanyID))) as DepartName,";
sql = sql+"(select Name from Company where (CompanyID=UserList.CompanyID)) as CompanyName ";
sql = sql+"from UserList where UserID='" + txtUserID.Text.Trim() +"' and Password='" + Encrypt.EncryptPwd(txtPassword.Text.Trim(),"MD5") + "' and Cancellation = 0";
//string sql = "select * from UserList where UserID='" + txtUserID.Text.Trim() +"' and Password='" + Encrypt.EncryptPwd(txtPassword.Text.Trim(),"MD5") + "' and Cancellation = 0";
ds = oprtb.SelectTable(sql);
if (ds.Tables[0].Rows.Count = 0)
{
oprtb.AlertMsg("输入的用户名或密码错误",Page);
return;
}
else
{
string UHAddress = Request.UserHostAddress;
string currentTime = DateTime.Now.ToString("yyyyMMdd hhmmss");
//登陆成功
Session["UserID"] = ds.Tables[0].Rows[0]["UserID"].ToString();
Session["Name"] = ds.Tables[0].Rows[0]["Name"].ToString();
Session["DepartID"] = ds.Tables[0].Rows[0]["DepartID"].ToString();
Session["DepartName"] = ds.Tables[0].Rows[0]["DepartName"].ToString();
Session["CompanyID"] = ds.Tables[0].Rows[0]["CompanyID"].ToString();
Session["CompanyName"] = ds.Tables[0].Rows[0]["CompanyName"].ToString();
//设置用户的登陆时间
oprtb.SetStartTime(txtUserID.Text.Trim());
//设置用户的登陆标记
string s_mark = txtUserID.Text.Trim() + "_" + UHAddress + "_" + currentTime;
oprtb.SetLoginMark(s_mark,txtUserID.Text.Trim());
//保存登陆标记
Session["LoginMark"] = s_mark;
MCompany.SystemLog slstru = new YesErp.MCompany.SystemLog();
slstru.SystemLog_IP = UHAddress;
slstru.SystemLog_LogIn = System.DateTime.Now;
slstru.SystemLog_Name = ds.Tables[0].Rows[0]["Name"].ToString();//用户姓名
slstru.SystemLog_ID = Int32.Parse(ds.Tables[0].Rows[0]["UserID"].ToString());//用户ID
//写系统日志
oprtb.LoginSystemLog(slstru);
//oprtb.AlertMsg("登录成功",Page);
Session["LoginTime"] = System.DateTime.Now;
//判断并转到新的页面
oprtb.ChangeUrl("../index.aspx",Page);
}
}
asp.net登陆代码下载的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于aspnet、asp.net登陆代码下载的信息别忘了在本站进行查找喔。
版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;
相关推荐
- 06-03常见刮刮乐代码含义(刮刮乐上的代码)
- 08-03派出所代码表(派出所代码表大全两位数)
- 07-05派出所的组织代码(派出所机构代码在哪查)
- 05-19酒店代码在那里(酒店代码是什么)
- 09-03网易云音乐代码(网易云音乐代码大全)
- 05-05怎么用代码下载视频(如何用代码下载文件)
- 08-01源代码查看答案(源代码怎么看答案)
- 09-22查看手机屏幕代码(手机查询屏幕代码)
- 08-22qq强行聊天代码(强制聊天器在线使用)
- 07-28网页代码怎么呼出(怎么样调出网页代码)
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
- 友情链接