很多站长朋友们都不太清楚php登陆实例,今天小编就来给大家整理php登陆实例,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php简单的登陆验证用户名和密码怎么写 2、 php 判断用户是否登录 3、 求写个比较简单的php登陆页面代码 4、 php curl 模拟登录并获取数据实例详解 php简单的登陆验证用户名和密码怎么写给你个实例参考一下php编写登陆验证用户名和密码吧。
登录页面
login.html 负责收集用户填写的登录信息
在CODE上查看代码片派生到我的代码片
<html>
<head>用户登录</head>
<form name="LoginForm" method="post" action="login.php" onSubmit="return InputCheck(this)">
<p>
<label for="username" class="label">用户名:</label>
<input id="username" name="username" type="text" class="input" />
<p/>
<p>
<label for="password" class="label">密 码:</label>
<input id="password" name="password" type="password" class="input" />
<p/>
<p>
<input type="submit" name="submit" value=" 确 定 " class="left" />
</p>
</form>
</html>
登录处理
login.PHP 负责处理用户登录与退出动作。
在CODE上查看代码片派生到我的代码片
<?php
//登录
if(!isset($_POST['submit'])){
exit('非法访问!');
}
$username = htmlspecialchars($_POST['username']);
$password = MD5($_POST['password']);
//包含数据库连接文件
include('conn.php');
//检测用户名及密码是否正确
$check_query = mysql_query("select userid from user_list where username='$username' and password='$password' limit 1");
if($result = mysql_fetch_array($check_query)){
//登录成功
session_start();
$_SESSION['username'] = $username;
$_SESSION['userid'] = $result['userid'];
echo $username,' 欢迎你!进入 <a href="my.php">用户中心</a><br />';
echo '点击此处 <a href="login.php?action=logout">注销</a> 登录!<br />';
exit;
} else {
exit('登录失败!点击此处 <a href="javascript:history.back(-1);">返回</a> 重试');
}
//注销登录
if($_GET['action'] == "logout"){
unset($_SESSION['userid']);
unset($_SESSION['username']);
echo '注销登录成功!点击此处 <a href="login.html">登录</a>';
exit;
}
?>
用户中心
my.php 是用户中心,作为用户登录检测。
在CODE上查看代码片派生到我的代码片
<?php
session_start();
//检测是否登录,若没登录则转向登录界面
if(!isset($_SESSION['userid'])){
header("Location:login.html");
exit();
}
//包含数据库连接文件
include('conn.php');
$userid = $_SESSION['userid'];
$username = $_SESSION['username'];
$user_query = mysql_query("select * from user_list where userid = '$userid' limit 1");
$row = mysql_fetch_array($user_query);
echo '用户信息:<br />';
echo '用户ID:',$userid,'<br />';
echo '用户名:',$username,'<br />';
echo '<a href="login.php?action=logout">注销</a> 登录<br />';
?>
conn.php,用于连接数据库
在CODE上查看代码片派生到我的代码片
<?php
$conn = mysql_connect("127.0.0.1","root","") or die("数据库链接错误".mysql_error());
mysql_select_db("info_db",$conn) or die("数据库访问错误".mysql_error());
mysql_query("set names gb2312");
?>
php 判断用户是否登录判断用户登陆主要分几个过程,第一步是用户登陆成功后把数据保存到session中,然后当用户访问需要登陆过的用户权限时就来判断session是否为空,如果不是就登录成功。下面来看个实例判断用户登陆主要分几个过程,第一步是用户登陆成功后把数据保存到session中,然后当用户访问需要登陆过的用户权限时就来判断session是否为空,如果不是就登录成功。下面来看个实例<?php教程session_start(); if(getconfig("chatroom_admin")==$_post["username"]getconfig("chatroom_adminpassword")==md5($_post["password"])){//登陆成功,注册session session_register("administrator"); if(isset($_session["hack_num"])){session_unregister("hack_num");}$_session["administrator"] = "yes"; header("location:main.php");exit; }else{if($_session["hack_num"]==""){session_register("hack_num"); $_session["hack_num"] = 1;}else{$_session["hack_num"] ++; } header("location:notice.php?id=".admin_login_lost);exit;}?>看到红色的没,那里就是用户登录成功把数据保存到session['hack_num']面。<?php //这个页面首先判断用户是否正确登录,如未登录,就转到登录页面。
求写个比较简单的php登陆页面代码index.php 录入页代码<form id="form1" name="form1" method="post" action="login.php">
<table width="400" border="0" align="center" cellpadding="1" cellspacing="1" class="tableborder">
<tr>
<td><div align="right">用户名:</div></td>
<td width="244">
<input type="text" name="User_name" id="User_name" /> </td>
</tr>
<tr>
<td><div align="right">密码:</div></td>
<td><input type="Password" name="User_Password" id="User_Password" /></td>
</tr>
<tr>
<td>
<div align="right">
<input type="submit" name="button" id="button" value="提交" />
</div></td>
<td><input type="reset" name="button2" id="button2" value="重置" /></td>
</tr>
</table>
</form> login.php提交页代码<?
error_reporting(0);
$mysql_servername = "127.0.0.1";
$mysql_username = "root";
$mysql_password ="123456";
$mysql_database ="first";
mysql_connect($mysql_servername , $mysql_username , $mysql_password);
mysql_select_db($mysql_database);
$U_name=$_POST['user_name'];
$U_passowrd=$_POST['user_password'];
if ($U_name $U_passowrd){
$sql = "SELECT * FROM admin WHERE U_name = '$U_name' and U_password='$U_passowrd'";
$res = mysql_query($sql);
$rows=mysql_num_rows($res);
if($rows){
header("location='c.php'");
exit;
}
echo "<script language=javascript>alert('用户名密码错误');history.back();</script>";
}else {
echo "<script language=javascript>alert('用户名密码不能为空');history.back();</script>";
}
?>
php curl 模拟登录并获取数据实例详解PHP的curl()在抓取网页的效率方面是比较高的,而且支持多线程,而file_get_contents()效率就要稍低些,当然,使用curl时需要开启下curl扩展。
代码实战
先来看登录部分的代码:
//模拟登录
function
login_post($url,
$cookie,
$post)
{
$curl
=
curl_init();//初始化curl模块
curl_setopt($curl,
CURLOPT_URL,
$url);//登录提交的地址
curl_setopt($curl,
CURLOPT_HEADER,
0);//是否显示头信息
curl_setopt($curl,
CURLOPT_RETURNTRANSFER,
0);//是否自动显示返回的信息
curl_setopt($curl,
CURLOPT_COOKIEJAR,
$cookie);
//设置Cookie信息保存在指定的文件中
curl_setopt($curl,
CURLOPT_POST,
1);//post方式提交
curl_setopt($curl,
CURLOPT_POSTFIELDS,
http_build_query($post));//要提交的信息
curl_exec($curl);//执行cURL
curl_close($curl);//关闭cURL资源,并且释放系统资源
}
函数login_post()首先初始化curl_init(),然后使用curl_setopt()设置相关选项信息,包括要提交的url地址,保存的cookie文件,post的数据(用户名和密码等信息),是否返回信息等等,然后curl_exec执行curl,最后curl_close()释放资源。注意PHP自带的http_build_query()可以将数组转换成相连接的字符串。
接下来如果登录成功后,我们要获取登录成功后的页面信息。
//登录成功后获取数据
function
get_content($url,
$cookie)
{
$ch
=
curl_init();
curl_setopt($ch,
CURLOPT_URL,
$url);
curl_setopt($ch,
CURLOPT_HEADER,
0);
curl_setopt($ch,
CURLOPT_RETURNTRANSFER,
1);
curl_setopt($ch,
CURLOPT_COOKIEFILE,
$cookie);
//读取cookie
$rs
=
curl_exec($ch);
//执行cURL抓取页面内容
curl_close($ch);
return
$rs;
}
函数get_content()中也是先初始化curl,然后设置相关选项,执行curl,释放资源。其中我们设置CURLOPT_RETURNTRANSFER为1即自动返回信息,而CURLOPT_COOKIEFILE可以读取到登录时保存的cookie信息,最后将页面内容返回。
我们的最终目的是要获取到模拟登录后的信息,也就是只有正常登录成功后才能获取的有用信息。接下来我们以登录开源中国的移动版为例,看看如何抓取到登录成功后的信息。
//设置post的数据
$post
=
array
(
'email'
=>
'oschina账户',
'pwd'
=>
'oschina密码',
'goto_page'
=>
'/my',
'error_page'
=>
'/login',
'save_login'
=>
'1',
'submit'
=>
'现在登录'
);
//登录地址
$url
=
"";
//设置cookie保存路径
$cookie
=
dirname(__FILE__)
.
'/cookie_oschina.txt';
//登录后要获取信息的地址
$url2
=
"";
//模拟登录
login_post($url,
$cookie,
$post);
//获取登录页的信息
$content
=
get_content($url2,
$cookie);
//删除cookie文件
@
unlink($cookie);
//匹配页面信息
$preg
=
"/<td
class='portrait'>(.*)<\/td>/i";
preg_match_all($preg,
$content,
$arr);
$str
=
$arr[1][0];
//输出内容
echo
$str;
使用总结
1、初始化curl;
2、使用curl_setopt设置目标url,和其他选项;
3、curl_exec,执行curl;
4、执行后,关闭curl;
5、输出数据。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
关于php登陆实例的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。