php 用户注册与登陆程序
php 用户注册与登陆程序
function islogin_xzy()
{
if(!isset($_SESSION['user'])){
$json['status']=1;
}else{
$ssess_=db("session as s");
$where="s.session_id='".Session_id()."' and u.uid is not null";
if($user=$ssess_->join("`user` as u on u.uid=s.uid")->field("u.*,s.session_id,s.uid")->where($where)->find()){
$json['status']=0;
$json['data']=$user;
}else{
$json['status']=1;
}
}
echo json_encode($json);
}
function reg_xzy()
{
$user_=db("user");
$reg['email']=strip_tags($_POST['email']);
$reg['pass']=empty($_POST['pass'])?"":md5($_POST['pass']);
$reg['sex']=$_POST['sex']=='男' || $_POST['sex']=='女'?$_POST['sex']:'';
$reg['nickname']=strip_tags($_POST['nickname']);
$reg['regip']=ip2long(getip());
$reg['regtime']=time();
$i=0;
foreach($reg as $v){
if(!empty($v)) $i++;
}
if($i!=6){
$json['status']=1;
$json['info']='注册项不全!';
}elseif($user_->where("`email`='{$reg['email']}'")->find()){
$json['status']=1;
$json['info']='已注册的email地址!';
}elseif($uid=$user_->insert($reg)){
$session_=db("session");
$session_->where("session_id='".Session_id()."'")->update(array('uid'=>$uid));
$sessionas_=db("session as s");
$where="s.session_id='".Session_id()."' and s.uid is not null";
if($user=$sessionas_->join("user as u on u.uid=s.uid")->field("u.*,s.session_id,s.uid")->where($where)->find()){
$_SESSION['user']=$user;
$json['data']=$user;
$json['status']=0;
}else{
$json['status']=1;
$json['info']='自动登陆出错,请人工登陆!';
}
}else{
$json['status']=1;
$json['info']='注册失败!';
}
echo json_encode($json);
}
function logout_xzy()
{
$session_=db("session");
$session_->where("session_id='".Session_id()."'")->update(array("uid"=>null));
session_destroy();
}
php 用户登陆代码,入门教程
function login_xzy()
{
$user_=db("user");
$session_=db("session");
$login['email']=strip_tags($_POST['email']);
$login['pass']=empty($_POST['pass'])?"":md5($_POST['pass']);
if($user=$user_->where("`email`='{$login['email']}' and `pass`='{$login['pass']}'")->find()){
if($session_->where("`uid`='{$user['uid']}'")->find()){
$json['status']=1;
$json['info']='已登陆的会员!';
}else{
$user['total']++;
$user_->where("`uid`='{$user['uid']}'")->update(array('total'=>$user['total'],'lastip'=>ip2long(getip()),'lasttime'=>time() ));
$session_->where("session_id='".Session_id()."'")->update(array('uid'=>$user['uid']));
$_SESSION['user']=$user;
$json['data']=$user;
$json['status']=0;
}
}else{
$json['status']=1;
$json['info']='用户名或密码不正确!';
}
echo json_encode($json);
}
php 分页代码,支持前10页与后10页分页
function multLink($currentPage, $totalRecords, $url, $pageSize = 10)
{
global $func_message;
if ($totalRecords <= $pageSize) return '';
$mult = '';
$totalPages = ceil($totalRecords / $pageSize);
$mult .= '<div class="pages"><div class="nextprev">';
if ($currentPage > 1)
{
$mult .= '<a href="'.$url.'page='.($currentPage - 1).'">上一页</a>';
}
else
{
$mult .= '<span class="nextprev">上一页</span>';
}
if ($totalPages < 13)
{
for ($counter = 1; $counter <= $totalPages; $counter++)
{
if ($counter == $currentPage)
{
$mult .= '<span class="current">'.$counter.'</span>';
}
else
{
$mult .= '<a href="'.$url.'page='.$counter.'">'.$counter.'</a>';
}
}
}
elseif ($totalPages > 11)
{
if($currentPage < 7)
{
for ($counter = 1; $counter < 10; $counter++)
{
if ($counter == $currentPage)
{
$mult .= '<span class="current">'.$counter.'</span>';
}
else
{
$mult .= '<a href="'.$url.'page='.$counter.'">'.$counter.'</a>';
}
}
$mult .= '<span>…</span><a href="'.$url.'page='.($totalPages-1).'">'.($totalPages-1).'</a><a href="'.$url.'page='.$totalPages.'">'.$totalPages.'</a>';
}
elseif($totalPages - 6 > $currentPage && $currentPage > 6)
{
$mult .= '<a href="'.$url.'page=1">1</a><a href="'.$url.'page=2">2</a><span>…</span>';
for ($counter = $currentPage - 3; $counter <= $currentPage + 3; $counter++)
{
if ($counter == $currentPage)
{
$mult .= '<span class="current">'.$counter.'</span>';
}
else
{
$mult .= '<a href="'.$url.'page='.$counter.'">'.$counter.'</a>';
}
}
$mult .= '<span>…</span><a href="'.$url.'page='.($totalPages-1).'">'.($totalPages-1).'</a><a href="'.$url.'page='.$totalPages.'">'.$totalPages.'</a>';
}
else
{
$mult .= '<a href="'.$url.'page=1">1</a><a href="'.$url.'page=2">2</a><span>…</span>';
for ($counter = $totalPages - 8; $counter <= $totalPages; $counter++)
{
if ($counter == $currentPage)
{
$mult .= '<span class="current">'.$counter.'</span>';
}
else
{
$mult .= '<a href="'.$url.'page='.$counter.'">'.$counter.'</a>';
}
}
}
}
if ($currentPage < $counter - 1)
{
$mult .= '<a href="'.$url.'page='.($currentPage + 1).'" class="nextprev">下一页</a>';
}
else
{
$mult .= '<span class="nextprev">下一页</span>';
}
$mult .= '</div></div>';
return $mult;
}
<br />
.pages {<br />
float:left;<br />
margin:3px 0 5px 10px;<br />
font-size:12px;<br />
}<br />
.pages span.nextprev {<br />
border:1px solid #5CB711;<br />
color:#999999;<br />
}<br />
.pages span.current {<br />
-moz-background-clip:border;<br />
-moz-background-inline-policy:continuous;<br />
-moz-background-origin:padding;<br />
background:#5CB711 none repeat scroll 0 0;<br />
border:1px solid #5CB711;<br />
color:#FFFFFF;<br />
font-weight:bold;<br />
}<br />
.pages a.nextprev {<br />
font-weight:bold;<br />
}<br />
.pages a, .pages a:visited {<br />
border:1px solid #5CB711;<br />
color:#5CB711;<br />
text-decoration:none;<br />
}<br />
.pages a, .pages span {<br />
-moz-background-clip:border;<br />
-moz-background-inline-policy:continuous;<br />
-moz-background-origin:padding;<br />
background:#FFFFFF none repeat scroll 0 0;<br />
display:block;<br />
float:left;<br />
margin-right:0.1em;<br />
padding:0.2em 0.5em;<br />
}<br />
获取用户IP地址与判断真实IP
function getIp() {
if($_SERVER['HTTP_CLIENT_IP'])
{
return $_SERVER['HTTP_CLIENT_IP'];
} elseif ($_SERVER['HTTP_X_FORWARDED_FOR']) {
return $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
return $_SERVER['REMOTE_ADDR'];
}
}
function get_real_ip()
{
$ip=false;
if(!empty($_SERVER["HTTP_CLIENT_IP"]))
{
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip)
{
array_unshift($ips, $ip); $ip = FALSE;
}
for ($i = 0; $i < count($ips); $i++)
{
if (!eregi ("^(10|172.16|192.168).", $ips[$i]))
{
$ip = $ips[$i];
break;
}
}
}
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}
php 分页类函数
function getPageBar($count = 0)
{
$bad_link_color = "#C0C0C0";
$page["url"] = eregi_replace("&page=[^&]+","",basename($_SERVER[SCRIPT_NAME])."?".$_SERVER[QUERY_STRING]);
$page["result_count"] = (string) $count;
$page["this_page"] = (empty($_GET["page"]))?"1":$_GET["page"];
$page["this_page"] = ($page["result_count"] == 0)?"0":$page["this_page"];
$page["page_size"] = $GLOBALS["option"]["page_size"];
$page["page_count"] = (string) ceil($page["result_count"]/$page["page_size"]);
$page["first_page"] = ($page["this_page"] > 1)?"<a href="".$page["url"]."&page=1" title="首页"><span style="font-size:12px; font-weight: bold; font-familly: Courier;">«</span></a>":"";
$page["rearward_page"] = ($page["this_page"] < (int) $page["page_count"])?"<a href="".$page["url"]."&page=".$page["page_count"]."" title="末页"><span style="font-size:12px; font-weight: bold; font-familly: Courier;">»</span></a>":"";
$page["prev_page"] = ($page["this_page"] > 1)?"<a href="".$page["url"]."&page=".((int)$page["this_page"] - 1)."" title="上一页"><span style="font-size:12px; font-weight: bold; font-familly: Courier;">‹</span></a>":"";
$page["next_page"] = ($page["this_page"] < (int) $page["page_count"])?"<a href="".$page["url"]."&page=".((int)$page["this_page"] + 1)."" title="下一页"><span style="font-size:12px; font-weight: bold; font-familly: Courier;">›</span></a>":"";
$page['start_page'] = ((int)$page["this_page"]-5<1)?1:(int)$page["this_page"]-5;
$page['end_page'] = ((int)$page["this_page"]+5 > $page['page_count'])?(int)$page["page_count"]:(int)$page["this_page"]+5;
for ($i = $page['start_page'];$i <= $page['end_page'];$i++)
{
$selected = ($_GET["page"] == $i)?"selected":"";
$page["page_select"] .= "<option value="$i" $selected>$i</option>";
$page["page_list"] .= ($i == $page["this_page"])?" <font color="red">$i</font> ":"<a href="".$page['url']."&page=$i" title="第 ".$i." 页">[$i]</a>";
}
return $page;
}
相关文章
- php 获取用户IP与IE信息程序 function onlineip() { global $_SERVER; if(getenv('HTTP_CLIENT_IP')) { $onlineip = getenv('HTTP_CLIENT_IP');...2016-11-25
- php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p> </p> <p> </p> <form name="form1...2016-11-25
- 【问题描述】:同一用户在同一时间多次登录如果不能检测出来,是危险的。因为,你无法知道是否有其他用户在登录你的账户。如何禁止同一用户多次登录呢? 【解决方案】 (1) 每次登录,身份认证成功后,重新产生一个session_id。 s...2015-11-24
- 一个用Javascript检测用户输入密码强度的效果代码,以下代码主要是从以下四个方面检测用户输入的密码的强度的,有兴趣的朋友可以自己添加或修改成自己想要的形式! 1. 如果输入的密码位数少于5位,那么就判定为弱。 2. 如果...2015-10-23
Ruby on Rails实现最基本的用户注册和登录功能的教程
这里我们主要以has_secure_password的用户密码验证功能为中心,来讲解Ruby on Rails实现最基本的用户注册和登录功能的教程,需要的朋友可以参考下...2020-06-30- 当来访者浏览器语言是中文就进入中文版面,国外的用户默认浏览器不是中文的就跳转英文页面。 <?php $lan = substr( $HTTP_ACCEPT_LANGUAGE,0,5); if ($lan == "zh-cn") print("<meta http-equiv='refresh' c...2015-11-08
- 这是注册程序是一款当用户输入完用户名是,就会自动去数据库中查询用户要注册的用户名是否己经被注册了,如果是返回提示否则提示可以注册。 conn.php文件 代...2016-11-25
- 这篇文章主要给大家介绍了关于微信小程序用户授权最佳实践的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-08
- 这篇文章主要为大家详细介绍了Android实现简单用户注册案例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-05-26
- 注册页面是大多数网站必备的页面,所以很有必要对自己的注册页面做些精心的设计。下面三张图,第一张是注册的展示页面,第二张思维导图就一个简单的逻辑,第三张是通过firebug查看调用的JS文件。 一、给每个输入框写下说明在...2015-11-24
- cookie 的用途之一是存储用户在特定网站上的密码和 id。另外,也用于存储起始页的首选项。在提供个人化查看的网站上,将要求阁下的网络浏览器利用阁下计算机硬驱上的少量...2016-11-25
- 前段时间发布了一个微信小程序的简单登录,但遇到一个问题,怎么确保用户每个页面都已经登陆了呢,这篇文章主要给大家介绍了关于微信小程序如何保证每个页面都已经登陆的相关资料,需要的朋友可以参考下...2021-11-05
- 第一,网站的内容;请各位站长朋友不要一天到晚只想着出什么好的绝招来推广网站,却忽略了网站的内容;其实网站的内容是极为重要的,因为这是你的本,你的根!网站的内容只有不断...2017-07-06
- 知识归纳因为MySQL是使用User和Host两个字段来确定用户身份的,这样就带来一个问题,就是一个客户端到底属于哪个host。 如果一个客户端同时匹配几个Host,对用户的确定将按照下面的优先级来排 基本观点越精确的匹配越优先...2015-11-08
- 这篇文章主要介绍了sqlserver添加sa用户和密码的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-07
- 这篇文章主要以实例的方式向大家介绍了javascript注册事件处理函数,内容很全面,感兴趣的朋友可以参考一下...2016-01-12
- 装完数据库清理一些默认账号的时候不小心把root删除了,flush privileges 之后的新 root 忘了grant任何权限,查看mysqld选项里面有个 −−skip-grant-tables复制代码 代码如下: #/usr/libexec/mysqld --verbos...2015-03-15
Win2012服务器 远程桌面帐户允许多用户同时登录的配置方法
这篇文章主要介绍了Win2012服务器 远程桌面帐户允许多用户同时登录的配置方法,需要的朋友可以参考下...2016-11-01- 这篇文章主要介绍了关于JSP用户登录连接数据库的相关资料,需要的朋友可以参考下面文章内容...2021-09-07
详解微信小程序入门从这里出发(登录注册、开发工具、文件及结构介绍)
这篇文章主要介绍了微信小程序入门从这里出发(登录注册、开发工具、文件及结构介绍),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-07-21