betway必威-betway必威官方网站
做最好的网站

PHP入门教程之表单与验证实例详解,PHP实现的登

本文实例讲述了PHP实现的登录页面信息提示功能。分享给大家供大家参考,具体如下:

本文实例讲述了php基于登陆时间判断实现一天多次登录只积分一次功能。分享给大家供大家参考,具体如下:

betway必威官方网站,本文实例讲述了PHP表单与验证。分享给大家供大家参考,具体如下:

login.php:

在网上找了很多的案例,感觉都差不多,有的还比较的繁琐,就自己尝试了一下,如何实现这个功能

Demo1.php

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="check_login.php" name="loginform"  method="post">
帐号:
  <input type="text" name="name" />
密码:
  <input type="password" name="pwd" />
<input type="submit" value="登 录" />
</form>
<?php
echo "<br/>";
//通过 error 值,确定提示信息
if(!empty($_GET['error'])){
  $error=$_GET['error'];
  If($error==1){
    Echo "<font color ='red'>您输入的账号或密码错误!</font>";
  }elseif ($error==2){
    Echo "<font color ='red'>您输入的账号或密码正确!</font>";
  }
}
?>
</body>
</html>

实现这个功能我在数据表里面增加了一个字段logintime,表示最后一次的登录时间,然后使用一天中的零时零分零秒和上一次的登录时间进行比较,如果上一次的登录时间大于了这个时间点表示已经登陆过,如果上一次的登录时间小于了这个时间点,则表示第一次登录,增加积分

<?php
  ob_start();
  //重新导向一个 URL
  //header()
  //header('Location:Demo2.php');
  //上面这句话可以自动跳转到你所想要的页面。
  //header('Location:http://www.baidu.com');
  //上面这句话自动跳转到百度上面去。
  echo 'baidu.com';
  header('Location:http://www.baidu.com');
  //在执行 header() 函数,必须注意,之前不能有任何浏览器输出
?>

check_login.php:

上代码:

Demo2.php

<?php
header("Content-type: text/html; charset=utf-8");
session_start(); //初始化session变量
$username = $_POST['name']; //接收表单提交的用户名
$password=md5($_POST['pwd']); //接收表单提交的密码
class chkinput  //定义类
{
  var $name;
  var $pwd;
  function chkinput($x,$y) //定义一个方法
  {
    $this->name=$x; //将管理员名称传给类对象$this->name
    $this->pwd=$y; //将管理员密码传给类对象$this->pwd
  }
  function checkinput()
  {
    include("conn.php"); //连接数据库文件
    $sql=mysql_query("select username,password from admin where username='".$this->name."' and password='".$this->pwd."'",$conn);
    $info=mysql_fetch_array($sql); //检索管理员名称和密码是否正确
    if($info==false) //如果管理员名称或密码不正确,则弹出相关提示信息
    {
      header("location:login.php?error=1");
      exit;
    }
    else //如果管理员名称或密码正确,则直接跳转到登陆成功后界面
    {
      header("location:login.php?error=2");
      $_SESSION['admin_name']=$info['username']; //将管理员名称存到$_SESSION[admin_name]变量中
      $_SESSION['pwd']=$info['password']; ////将管理员名称存到$_SESSION[pwd]变量中
    }
  }
}
$obj=new chkinput(trim($username),trim($password)); //创建对象
$obj->checkinput(); //调用类
?>
// 判断是否是一天中第一次登录
// 上一次登陆的时间
$lastLogintime = $userinfo['logintime'];
// 一天中的零时零分零秒
$today = strtotime(date('Y-m-d'));
if($lastLogintime < $today) {
  // 一天中第一次登录增加积分(关联更新)
  // 注意:使用关联更新数据的时候需要传递两次id
  $data['id'] = $userinfo['id'];
  $data['userinfo'] = array(
    'points' => $userinfo['points']   C('LOGIN'),
  );
  $user->relation(true)->where(array('id'=>$userinfo['id']))->save($data);
}
<?php
  ob_start();
  echo '1232';
  //字符编码
  header('Content-Type:text/html;charset=GBK'); //设置页面编码
  echo '我是中文';
?>

conn.php:

需要注意的是还要修改登录时间:

Demo3.php

本文由betway必威发布于编程开发,转载请注明出处:PHP入门教程之表单与验证实例详解,PHP实现的登

TAG标签: betway必威
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。