QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3079|回复: 12

一个PHP表单登录问题

[复制链接]
发表于 2006-5-21 13:06:13 | 显示全部楼层 |阅读模式
最近刚刚接触PHP,写了一个简单的登录页面,遇到问题,请大家帮忙看一看

<?php
  //phpinfo();

   echo "the content is ".$username." ".$passwd." hello!<p>";   
   //测试是否得到提交的数据
  if($username||$passwd)
  {
    //省略   
  }
  else
  {
     echo "Please log in!!!!!!!!!!!!!!!";    //没有提交数据就显示这样的信息
  }
?>

?>

<html>
  <center>
  <form method=post action="test.php">
  <table bgcolor='#cccccc'  border = 0 cellpadding = 6 cellspacing = 0>
   <tr>
     <th colspan = 2 bgcolor = '#ff6600'>
       Please Log In
     </th>
   </tr>
   <tr>
     <td>Username:</td>
     <td><input type=text name=username></td></tr>
   <tr>
     <td>Password:</td>
     <td><input type=password name=passwd></td></tr>
   <tr>
     <td colspan=2 align=center>
     <? display_form_button('log-in'); ?>  //显示一个按钮
     <?
        $username = user;
        $passwd = password;  //即使这样赋值也不能传回当前页面
     ?>
     </td></tr>
   <tr>
</table></form>
</center>
</html>

现在的问题是我在表单中提交信息后想再传递给当前的这个test.php这个页面
然后金星数据库的查询,可是发现无法捕获username passwd这两个数据
echo "the content is ".$username." ".$passwd." hello!<p>";
总是无法显示这两个数据的值
发表于 2006-5-21 13:16:46 | 显示全部楼层
你应该用$_POST['username']
回复

使用道具 举报

发表于 2006-5-21 15:40:24 | 显示全部楼层
楼主的教材过期了
回复

使用道具 举报

 楼主| 发表于 2006-5-21 16:48:24 | 显示全部楼层
问题解决了 十分感谢
我手里这本书太老了 呵呵
回复

使用道具 举报

 楼主| 发表于 2006-5-21 18:38:25 | 显示全部楼层
还有个问题
对于”test.php?action = XXXX“这种形式传递的参数,在test.php中如何捕获action呢?
我用$_POST('action')好像不行?
回复

使用道具 举报

发表于 2006-5-21 18:53:45 | 显示全部楼层
GET 吧?

-------------
PHP 超全局变量

$GLOBALS
包含一个引用指向每个当前脚本的全局范围内有效的变量。该数组的键标为全局变量的 名称。从 PHP 3 开始存在 $GLOBALS 数组。

$_SERVER
变量由 Web 服务器设定或者直接与当前脚本的执行环境相关联。类似于旧数组 $HTTP_SERVER_VARS 数组(依然有效,但反对使用)。

$_GET
经由 HTTP GET 方法提交至脚本的变量。类似于旧数组 $HTTP_GET_VARS 数组(依然有效,但反对使用)。

$_POST
经由 HTTP POST 方法提交至脚本的变量。类似于旧数组 $HTTP_POST_VARS 数组(依然有效,但反对使用)。

$_COOKIE
经由 HTTP Cookies 方法提交至脚本的变量。类似于旧数组 $HTTP_COOKIE_VARS 数组(依然有效,但反对使用)。

$_FILES
经由 HTTP POST 文件上传而提交至脚本的变量。类似于旧数组 $HTTP_POST_FILES 数组(依然有效,但反对使用)。详细信息请参阅 POST 方法上传。

$_ENV
执行环境提交至脚本的变量。类似于旧数组 $HTTP_ENV_VARS 数组(依然有效,但反对使用)。

$_REQUEST
经由 GET,POST 和 COOKIE 机制提交至脚本的变量,因此该数组并不值得信任。所有包含在该数组中的变量的存在与否以及变量的顺序均按照 php.ini 中的 variables_order 配置指示来定义。该数组没有直接模拟 PHP 4.1.0 的早期版本。参见 import_request_variables()。
回复

使用道具 举报

 楼主| 发表于 2006-5-21 22:27:49 | 显示全部楼层
问题解决了 5555 谢谢jiangtao9999兄
我这刚开始接触 手里这本书有点老 可是要做的东西又时间紧 实在麻烦了
回复

使用道具 举报

发表于 2006-5-21 22:40:15 | 显示全部楼层
看 http://www.php.net/docs.php
回复

使用道具 举报

 楼主| 发表于 2006-5-22 01:11:19 | 显示全部楼层
非常感谢 请问我的系统是RH9 安装的默认的PHP 可以使用IMAP么?
imap_open("{localhost/pop3:110}INBOX","$username","$passwd")
参数中的localhost项就是指接收邮件的服务器地址吧。

不知为什么,我总是出现couldn't open stream .... line X的错误
用户名和密码没问题
回复

使用道具 举报

发表于 2006-5-22 07:59:08 | 显示全部楼层
应该这样用

imap_open("{localhost:110/pop3/notls}INBOX", "$username", "$passwd");
回复

使用道具 举报

 楼主| 发表于 2006-5-22 11:30:24 | 显示全部楼层
试了试还是不行,请问RH9中mail server中的imap包是否需要安装?
php-imap已经安装。

还有参数中的localhost项就是指接收邮件的服务器地址吧。
回复

使用道具 举报

发表于 2006-5-22 11:39:33 | 显示全部楼层
你的邮件服务器上一定要运行有imap的或是pop3的服务,这样才能imap_open...
回复

使用道具 举报

 楼主| 发表于 2006-5-23 00:21:46 | 显示全部楼层
5555 太感谢了前辈了 问题解决了 已经成功连上了
现在有遇到一个新的问题
我使用imap_headers($stream);
总是发生超时错误
我又试着用imap_header($stream,1);
去获取一封邮件的信息发现没问题。
会不会是邮件服务器上的邮件过多?
怎么延长响应时间的限制,现在是30秒。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-17 00:52 , Processed in 0.048139 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表