能把表单也截取出来就更好了。只要表单的提交地址正确,就是你现在截图的这个页面地址,然后method是post,两个input的name分别是username和password就行了
创新互联建站自成立以来,一直致力于为企业提供从网站策划、网站设计、网站设计制作、网站制作、电子商务、网站推广、网站优化到为企业提供个性化软件开发等基于互联网的全面整合营销服务。公司拥有丰富的网站建设和互联网应用系统开发管理经验、成熟的应用系统解决方案、优秀的网站开发工程师团队及专业的网站设计师团队。
你先获取到登陆页输入的用户名密码,在后台用select * from 表 where user =“用户名”and password=“密码”。用一个变量保存结果,然后if判断这个结果,为true 就让登陆 ,false不能登陆
数据库连接方式:$conn=mysql_connect("host","user","pwd")or die("数据库连接失败".mysql_error());mysql_select_db("data_table",$conn);再不叫我294442185
创建conn.php,连接数据库。
$dns = 'mysql:host=127.0.0.1;dbname=test';
$username = 'root';
$password = 'root';
// 1.连接数据库,创建PDO对象
$pdo = new PDO($dns,$username,$password);
创建login.html,登陆页面。
用户名
密 码
创建login.php,验证账号密码。
header("Content-Type: text/html; charset=utf8");
if(!isset($_POST["submit"])){
exit("错误执行");
}//检测是否有submit操作
include('conn.php');//链接数据库
$name = $_POST['name'];//post获得用户名表单值
$pwd = sha1($_POST['password']);//post获得用户密码单值
if ($name $pwd){//如果用户名和密码都不为空
$sql = "select * from user where username = '$name' and password='$pwd'";//检测数据库是否有对应的username和password的sql
$stmt = $pdo-prepare($sql);
$stmt-execute();
if($stmt-fetch(PDO::FETCH_BOUND)){//0 false 1 true
header("refresh:0;url=welcome.html");//如果成功跳转至welcome.html页面
exit;
}else{
echo "用户名或密码错误";
echo "
setTimeout(function(){window.location.href='login.html';},1000);
";//如果错误使用js 1秒后跳转到登录页面重试;
}
}else{//如果用户名或密码有空
echo "表单填写不完整";
echo "
setTimeout(function(){window.location.href='login.html';},1000);
";
//如果错误使用js 1秒后跳转到登录页面重试;
}
$pdo = null;
创建signup.html,注册页面
用户名:
密 码:
创建signup.php
header("Content-Type: text/html; charset=utf8");
if(!isset($_POST['submit'])){
exit("错误执行");
}//判断是否有submit操作
$name=$_POST['name'];//post获取表单里的name
$pwd = sha1($_POST['password']);//post获取表单里的password
include('conn.php');//链接数据库
$sql="insert into user(id,username,password) values (null,'$name','$pwd')";//向数据库插入表单传来的值的sql
$stmt = $pdo-prepare($sql);
$stmt-execute();
$stmt-fetch(PDO::FETCH_BOUND);
if (!$stmt){
die('Error: ' . $stmt-getMessage());//如果sql执行失败输出错误
}else{
echo "注册成功";//成功输出注册成功
}
$pdo = null;//关闭数据库
你可以做一个简单的例如你只有用户名和密码即可那么你先在数据库(以mysql为例)中建表例如叫做user 字段为 id name pass分别是编号、用户名、密码长度分别是int(8) a_t(自动编号) 主键,varchar(50) ,varchar(50) 你可以添加一个测试数据 例如 1,admin,admin//说明密码这里不说加密的问题,用明文实现 登录页面的代码:login.phphtmlheadtitle用户登录/title/headbodyform action="checklogin.php" name="loginform" method="post"用户名:input name="name" type="text"br密 码:input name="password" type="password"brinput value="登录" type="submit"br/form/body/html checklogin.php代码(检测登录): $name=$_POST[name];$pass=$_POST[password];session_start();//这个可以维持登录状态,可以参照session的使用
//登录检查函数 function login_state($uid,$user_shell){ $sql="SELECT * FROM `user` WHERE `name`='$name'";
$query=@mysql_query($sql) or die(mysql_error());
$us=is_array($row=@mysql_fetch_array($query));
$user_shell=$us ? $user_shell==$row[password]:FALSE;
if($user_shell){ echo "scriptalert('登录成功');/script";
return $row;
}else{
echo "scriptalert('您暂时不能浏览该页面,请先登录');location.href='login.php';/script";
} }login_state($name,$password);?
希望可以帮到您,如果还有问题可以联系2458285853
面向对象写法:登录模板login.html,处理类,LoginAction.class.php。给你个最简单的过程化代码login.php:
html
head
meta http-equiv="content-type" content="text/html; charset=utf-8"
titleLogin/title
/head
body
div id="pic"
a href="#" title="立刻体检"img src="../img/login.jpg"//a
/div
div id="input"
form action="do_login.php" method="post"
p class="name"用户名:input class="in" type="text" name="username"//p
p class="name"密nbsp;nbsp;码:input class="in" type="password" name="password"//p
input id="deng" type="image" src="../img/login.gif" title="登录" name="submit" value="登录"/
/form
/div
/body
/html
dologin.php:
?php
session_start();
include './config.php';
if(isset($_POST['submit'])){
$username=$_POST['username'];
$password=md5($_POST['password']);
$error=array();
$sql="select * from user where username='{$username}' and password='{$password}'";
$result= mysql_query($sql);
if(mysql_num_rows($result)0){
$_SESSION['username']=$username;
header("location:./head.php");
exit;
}else{
$error[]="用户名或密码错误,请重新输入!";
$_SESSION['error']=$error;
header("location:./error.php?from=login.php");
exit;
}
mysql_close();
}
?