首 页   · 站长博客 · 用户注册 · 会员登陆  · 会员排行  ·最新主题  ·最近回复  精华区  版权声明  ·论坛管理
  当前登录身份:游客,请先登录。  笔名: 口令: 验证码:   
楼 主  index »  PHP+MYSQL编程 » [原创]用户登陆窗口疑问  


  作者:liufayong
  注册时间:2005-06-25
  主题/回复:9/6
  积分:452
  等级:★★☆(五级)
  称号:略有小成

  feuw@123.com
  未提供
  www.

 

 发表:2005-07-21 02:46:10 阅读 2432 次 回复 2 次 得分1  |   字号 字色
[原创]用户登陆窗口疑问
我的登陆部分有default.php ,check.php, longin.php, logout.php ,register.htm
代码分别如下:
一:default.php代码
<?php
require ("check.php");
?>
<HTML>
<HEAD>
<TITLE> 用户登陆首页 </TITLE>
</HEAD>

<BODY>
<div align=center>
<p align=center><strong>欢迎浏览本网站</strong></p><br>
您好,欢迎您!
<?php
//如果是已登陆用户,则在您好后显示用户名
echo $login;
?>
<br>

<a herf="logout.php">注销</a><br>
<a herf="register.html">新用户注册</a><br>
</div>
</BODY>
</HTML>

二:check.php代码
<?php
//检测客户端是否有名为login的cookie存在
//cookie不存在,打开登陆页面login.php要求用户登陆
if (!$http_cookie_vars["login"])
{
?>
<script language=javascript>
window.open

("login.php","login","width=200,height=250,toobar=yes,status=no");
</script>
<?php
}
?>
三:longin.php代码
<?php
if ($name)
{
$conn=mysql_connect("localhost","root","adminsa");
mysql_select_db("test");
$sql="select password from users where name='".$name."'";
$result=mysql_query($sql,$conn);
//检验以$name为条件的搜索是否成立
#if ($result) echo "successed!";
   #  else echo "faild";
if(!($obj_login=mysql_fetch_object($result)))
{
echo "用户名错误!";
    echo "<a herf='login.php'>重新登陆</a>";
    mysql_close($conn);
    exit;
}
//检验用户密码是否正确
if ($obj_login->password!=$password)
{
echo "密码错误!";
    echo "<br><a herf='edit.php'>重新输入</a>";
    mysql_close($conn);
    exit;
    }
    mysql_close($conn);
setcookie("login",$name);
?>
<div align=center>
登陆成功<br>
您好
<?php
echo $name;
?>
<br>
<a herf="logout.php">注销</a><br>
<a herf="edit.php">修改个人资料</a><br>
<?php
exit;
}
?>
<!--如果用户没有登陆,输出登陆页面-->
<html>
<style type="text/css">
<!--
.style2 {font-size: 12px}
-->
</style>
<body>
<h1><div align=center class="style2">请填写您的用户密码</div><h1>
<form action=login.php method=post>
<div align=center>
  <span class="style2">您的用户名:</span>
  <input type=text size=10 maxlength=50 name="name"><br>
  <span class="style2">您的密码:</span>
  <input type=password size=10 maxlength=50 name="password"><br>
<input type=submit value="提交">
<input type=reset  value="重写"><br><br>
<a href="register.htm">新用户注册</a></div>
</form>
</body>
</html>
四:logout.php代码
<?php
setcookie("login","");
?>
我测试登陆也能成功,但在我登陆了以后页面显示的“注销”“新用户登陆”都不可用,只是

直接输出到页面上了,其实我代码里是做的链接的分别连接到logout.php和register.htm上的
不知道错在哪里,还有应该用户刷新页面如果是check.php检测到用户登陆以后,不在打开登

陆窗口吧?怎么我的每次刷新都会弹出登陆窗口?望赐教!
 
 1#楼  
 
  回复人:一起PHP
  注册时间:2004-02-27
  主题/回复:247/1521
  积分:4649
  等级:★★★★★☆(十一级)
  称号:论坛圣人

   
 1#楼 发表于2005-07-21 16:47:30  评分:1 

 测试登陆也能成功?
 你的register_globals设置成了on?
 如果没有设置成on的话,这个地方登陆不可能成功。
 login.php第一行:
 if ($name)

 如果register_globals没有设置成on,得用
 $name=$_POST["name"];
 if($name)
 这样才行。否则变量传递不过去。
 2#楼  
 
  回复人:liufayong
  注册时间:2005-06-25
  主题/回复:9/6
  积分:452
  等级:★★☆(五级)
  称号:略有小成

   
 2#楼 发表于2005-07-22 02:59:03  评分:× 

是啊我设置了on,是不是php5才改成了$name=$_POST["name"];
 if($name)
  页数1/1首页 « 1 » 末页
  发表回复:您还没有登陆,无法发表回复。请先[登陆]

一起PHP技术联盟 主办:一起PHP 联系方式:站长QQ:4304410 QQ群:8423742 20159565 站长博客 E-mail: nqp@nqp.me 执行时间:0.008sec
SimsmaBBS 2008 (v6.0) Developed by 17php.com,Copyright(C)2003-2010 All rights reserved. 副本授权:一起PHP官方专用版