C T 官 方 网 站有没有自动登录功能?是如何让面试官记住你密码的那种吗?

网站功能开放主流技术(3)
做网站的时候经常会碰到要实现记住密码,下次自动登录,一周内免登陆,一个月内免登陆这种需求。这种功能一般都是通过cookie来实现的。
本篇文章将简单说一下如何使用php实现该需求的。当然实现该需求的方法有N多种。
整个过程就是用户在登陆的时候,如果选择了记住密码或者一周内免登陆等这个选项的时候,则在用户成功登陆操作完成之后,
存储一个实现自动登录的cookie的数据到数据库的用户表里面,作为下次自动登录时验证用。验证通过则自动登录,否则需要输入用户名,密码进行登录。
保存的这个cookie值则可以取一个随机码。具体示例代码如下:$username=trim($_POST['username']);
$password=md5(trim($_POST['password']));
$ref_url=$_GET['req_url'];
$remember=$_POST['remember'];//是否自动登录标示
$err_msg='';
if($username==''||$password==''){
$err_msg=&用户名和密码都不能为空&;
$row=getUserInfo($username,$password);
if(empty($row)){
$err_msg=&用户名和密码都不正确&;
$_SESSION['user_info']=$
if(!empty($remember)){//如果用户选择了,记录登录状态就把用户名和加了密的密码放到cookie里面
setcookie(&username&,$username,time()+);
setcookie(&password&,$password,time()+);
if(strpos($ref_url,&login.php&)===false){
header(&location:&.$ref_url);
header(&location:main_user.php&);
另外在访问网站的每个页面时,都要先进行一遍如下函数的检查。
//检查用户是否登录
function checklogin(){
if(empty($_SESSION['user_info'])){//检查一下session是不是为空
if(empty($_COOKIE['username'])||empty($_COOKIE['password'])){//如果session为空,并且用户没有选择记录登录状
header(&location:login.php?req_url=&.$_SERVER['REQUEST_URI']);//转到登录页面,记录请求的url,登录后跳转过去,用户体验好。
}else{//用户选择了记住登录状态
$user=getUserInfo($_COOKIE['username'],$_COOKIE['password']);//去取用户的个人资料
if(empty($user)){//用户名密码不对没到取到信息,转到登录页面
header(&location:login.php?req_url=&.$_SERVER['REQUEST_URI']);
$_SESSION['user_info']=$//用户名和密码对了,把用户的个人资料放到session里面
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:6387次
排名:千里之外
原创:86篇新 葡 京官网有没有自动登录功能?是记住密码的那种吗?_百度知道Android-登陆界面,包含记住密码和自动登陆
Android-登陆界面,包含记住密码和自动登陆
发布时间: 4:30:14
编辑:www.fx114.net
本篇文章主要介绍了"Android-登陆界面,包含记住密码和自动登陆",主要涉及到Android-登陆界面,包含记住密码和自动登陆方面的内容,对于Android-登陆界面,包含记住密码和自动登陆感兴趣的同学可以参考一下。
这两天需要用到一个登陆界面,需要有记住密码和自动登陆的功能。因为之前没有做过类似的东西,而且由于对也不是很熟悉,于是在网上看到一位兄弟写得很不错,代码简单易懂,于是根据他的方法做出了自己需要的效果,这就是分享的力量,所以,感谢这位兄弟。
博文连接在此:
如果对也不是很清楚的话建议单独看看关于的内容,在这里就不介绍了。实现效果如下
由于布局文件因为整个项目的原因用到了两个资源文件,贴出可能占稍大篇幅,这里就不给出了,相信布局对很多人来说也不是什么难事的吧。
还有这里的重置按钮没有写到,到时候连接数据库的时候再写,这里也就当忽略了。
LoginActivity.java文件:
public class LoginActivity extends Activity {
private RadioGroup login_
private RadioButton teacher,
private Button login,
private EditText userName,
private CheckBox rem_psw,auto_
private String userNameValue,passwordV
private SharedP
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
login = (Button) findViewById(R.id.login);
reset = (Button) findViewById(R.id.reset);
userName = (EditText) findViewById(R.id.number);
password = (EditText) findViewById(R.id.password);
rem_psw = (CheckBox) findViewById(R.id.rem_psw);
auto_login = (CheckBox) findViewById(R.id.auto_login);
login_group = (RadioGroup) findViewById(R.id.login_radiogroup);
sp = this.getSharedPreferences(&userinfo&, Context.MODE_WORLD_READABLE);
if(sp.getBoolean(&ISCHECK&, false))
//设置默认是记录密码状态
rem_psw.setChecked(true);
userName.setText(sp.getString(&USER_NAME&, &&));
password.setText(sp.getString(&PASSWORD&, &&));
//判断自动登陆多选框状态
if(sp.getBoolean(&AUTO_ISCHECK&, false))
//设置默认是自动登录状态
auto_login.setChecked(true);
//跳转界面
Intent intent = new Intent(LoginActivity.this,MainActivity.class);
LoginActivity.this.startActivity(intent);
login_group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
// 登录监听事件
现在默认为用户名为:2011 密码:1234
login.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
userNameValue = userName.getText().toString();
passwordValue = password.getText().toString();
if(userNameValue.equals(&2011&)&&passwordValue.equals(&1234&))
Toast.makeText(LoginActivity.this,&登录成功&, Toast.LENGTH_SHORT).show();
//登录成功和记住密码框为选中状态才保存用户信息
if(rem_psw.isChecked())
//记住用户名、密码、
Editor editor = sp.edit();
editor.putString(&USER_NAME&, userNameValue);
editor.putString(&PASSWORD&,passwordValue);
//跳转界面
Intent intent = new Intent(LoginActivity.this,MainActivity.class);
LoginActivity.this.startActivity(intent);
//finish();
Toast.makeText(LoginActivity.this,&用户名或密码错误,请重新登录&, Toast.LENGTH_LONG).show();
//监听记住密码多选框按钮事件
rem_psw.setOnCheckedChangeListener(new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {
if (rem_psw.isChecked()) {
System.out.println(&记住密码已选中&);
sp.edit().putBoolean(&ISCHECK&, true).commit();
System.out.println(&记住密码没有选中&);
sp.edit().putBoolean(&ISCHECK&, false).commit();
//监听自动登录多选框事件
auto_login.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {
if (auto_login.isChecked()) {
System.out.println(&自动登录已选中&);
sp.edit().putBoolean(&AUTO_ISCHECK&, true).commit();
System.out.println(&自动登录没有选中&);
sp.edit().putBoolean(&AUTO_ISCHECK&, false).commit();
记住密码和自动登陆都实现了,效果很不错。
由于代码几乎都是参考而来的,只修改了很小很小一部分,虽然斗胆将本文设置为原创,但还请各位看到的话不要忽略参考博文的地址,地址已在前面给出,谢谢。
本文标题:
本页链接:用户登录,怎么实现记住用户名和自动登录呢???
[问题点数:60分,结帖人printf_2012]
用户登录,怎么实现记住用户名和自动登录呢???
[问题点数:60分,结帖人printf_2012]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
本帖子已过去太久远了,不再提供回复功能。XP系统设置记住帐号密码,让其自动登陆。这样安全吗?_百度知道

我要回帖

更多关于 你们有没有 那种 的文章

 

随机推荐