求救,一个会员登录网页.最基础的!

jinercn 2003-09-08 07:03:33
ex31a:
<BODY>
<font size=5 color=green>登录画面</font>
<font color=red><?echo $errmsg;?></font>
<hr>
<form action=ex31b.php method=$_POST>
<table border=0>
<tr>
<td>姓名:</td><td><input type=text size=20 name=name></td>
<td><input type=submit name=SEND value=登录></td></tr>
</table>
</form>
<a href=ex31c.php>会员专用网页</a>
</BODY>
ex31b:
<BODY>
<?php
If($name=="")
{
$errmsg="输入字段不可为空白!";
Header("Location:ex31a.php?errmsg=$errmsg");
}
Else
Header("Location:ex31c.php?user=$name");
?>
</BODY>
ex31c:
<BODY>
<?php
If($user=="")
{
$errmsg="您必须先进行登录才能进入会员专区!";
Header("Location:ex31a.php?errmsg=$errmsg");
}
Else
Setcookie("user",$user,Time()+30*86400);
?>
<font size=5 color=red>会员专区</font>
<hr>
<font size=5 color=blue><?echo $user;?></font>,欢迎光临会员专区
</BODY>
现在问题是显示不出来.请大家帮忙调试一下,看看错误在哪.
...全文
29 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jinercn 2003-09-09
  • 打赏
  • 举报
回复
大家快帮帮我吧.我自己改了好多次,怎么都不行,说是传输变量的错误,可我试着改了,还是不行,不知道错误在哪.
jinercn 2003-09-09
  • 打赏
  • 举报
回复
这是我改过的:
ex31a:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> 会员登录网站 </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>

<BODY>
<font size=5 color=green>登录画面</font>
<font color=red>
<?
echo $errmsg;
?></font>
<hr>
<form action=ex31b.php method=$_POST['name']>
<table border=0>
<tr>
<td>姓名:</td><td><input type=text size=20 name=name></td>
<td><input type=submit name=SEND value=登录></td></tr>
</table>
</form>
<a href=ex31c.php>会员专用网页</a>
</BODY>
</HTML>


ex31b:
<?php
If($name=="")
{
$errmsg="输入字段不可为空白!";
Header("Location:ex31a.php?errmsg=$errmsg");
}
Else
Header("Location:ex31c.php?user=$name");
$user=$_GET['name'];
?>


ex31c:
<?php
If($user=="")
{
$errmsg="您必须先进行登录才能进入会员专区!";
Header("Location:ex31a.php?errmsg=$errmsg");
}
Else
Setcookie("user",$user,Time()+30*86400);
?>
<HTML>
<TITLE> 会员专用网页 </TITLE>
<font size=5 color=red>会员专区</font>
<hr>
<font size=5 color=blue><?echo $user;?></font>,欢迎光临会员专区
</body>
</HTML>

现在的问题是,虽然不报错了,但显示不正常,当我输入姓名登录时,还是显示第一个页面.
请教!
mrsun 2003-09-09
  • 打赏
  • 举报
回复
header标记前不能输出,你看看你是否在前面有一些隐含的东西,例如空格、include文件等等
可以用js替代
<Script>
location.href="index.jsp";
</Script>
weieryang 2003-09-09
  • 打赏
  • 举报
回复
header前面不能有任何输出,包括前面的html语句,都不能有。
jinercn 2003-09-09
  • 打赏
  • 举报
回复
我现在改了:
<?php
If($_POST['name']=="")
{
$errmsg="输入字段不可为空白!";
Header("Location:ex31a.php?errmsg=$errmsg");
}
Else
Header("Location:ex31c.php?user=$name");
?>
ex31c
<?php
If($user=="")//这里应该用POST还是GET?
{
$errmsg="您必须先进行登录才能进入会员专区!";
Header("Location:ex31a.php?errmsg=$errmsg");
}
Else
Setcookie("user",$user,Time()+30*86400);
?>
jinercn 2003-09-08
  • 打赏
  • 举报
回复
我改过了,还是不行,我把前面的代码都放在后面了.你能把正确的代码帖一遍给我看吗?
谢谢.
feel8 2003-09-08
  • 打赏
  • 举报
回复
header之前不能有任何输出。。
jinercn 2003-09-08
  • 打赏
  • 举报
回复
出现这段警告:
Warning: Cannot modify header information - headers already sent by (output started at C:\Apache2\htdocs\jiner\ex31b.php:12) in C:\Apache2\htdocs\jiner\ex31b.php on line 16
feel8 2003-09-08
  • 打赏
  • 举报
回复
$_POST['变量名'];
这样接收post来的数据。把代码中相关内容改一下。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧