PHP3 入门教程(极短篇)---HTML 表单和变量

发表于:2007-07-01来源:作者:点击数: 标签:
HTML 表单和变量 作 者 : 扬眉 如同 ASP 一样, PHP 3.0 也可以很方便地处理 HTML 表单和变量,从表单发送过来的每个值,都会自动地根据表单的名字属性( name )赋予相应的变量值,可以直接在 PHP3 脚本中引用这些变量。这个功能在 Web 应用中使用的十分广
    
  HTML 表单和变量
  作 者 : 扬眉
  
     如同 ASP 一样, PHP3.0 也可以很方便地处理 HTML 表单和变量,从表单发送过来的每个值,都会自动地根据表单的名字属性( name )赋予相应的变量值,可以直接在 PHP3 脚本中引用这些变量。这个功能在 Web 应用中使用的十分广泛,客户端的数据采集基本上都是用这种方法来实现的。下面,我们构建一个小小的自动邮件发送程序,来演示 PHP3.0 的这个功能。
  
     下面有一个 HTML 表单的例子:
  < HTML>
  < HEAD>
  < TITLE> 调查页面 < /TITLE>
  < BODY>
  
  < CENTER> 您想知道更多的关于我们公司的信息吗? < P>
  < TABLE WIDTH = 400>< TR>< TD align = right>
  < FORM ACTION="email.php3" METHOD="POST">
  您的姓名: < BR>
  < INPUT TYPE="text" NAME="name" SIZE="20" MAXLENGTH="30">
  < P>
  您的邮件地址: < BR>
  < INPUT TYPE="text" NAME="email" SIZE="20" MAXLENGTH="30">
  < P>
  橘子和苹果那个您更喜欢一些?
  < SELECT NAME="preference">
  < OPTION value = Apples> 苹果 < OPTION value = Oranges> 橘子
  < /SELECT>
  < P>
  < INPUT TYPE="submit" VALUE=" 发送 ">
  < /FORM>
  < /TD>< /TR>< /TABLE>< /CENTER>
  < /BODY>
  < /HTML>
  
  
     将这个 HTML 文件存为“ moreinfo.html ”。
  
     你应该注意到了 FORM 的 ACTION 属性被指向 email.php3 。这个文件将包含执行服务器端命令的脚本:
  
     email.php3 文件:
  < ?
  /* 这个脚本将用来处理从 moreinfo.html 文件发送过来的信息 */
  PRINT "< CENTER>";
  PRINT " 您好 , $name.";
  PRINT "< BR>< BR>";
  PRINT " 谢谢您的参与 < BR>< BR>";
  PRINT " 我们将向 $email 发出验证信息 ";
  PRINT "< /CENTER>";
  ?>
  
  
     当用户在 HTML 表单中填入了姓名和 eMail 地址,并且按下了“发送”按钮,这个表单将会调用 email.php3 文件,然后这个 PHP3 脚本将会返回那些输入的信息(假设这个用户的姓名是王鹏, eMail 地址是 wp@263.net ,并且喜欢苹果):
  
     您好,王鹏 .
  
     谢谢您的参与
  
     我们将向 wp@263.net 发出验证信息
  
     但是,到现在我们的计划还没有完成,应为我们没有记录下任何的用户信息,也就不知道要如何发送这封 email 了。
  
     解决的一个方法,是使用 PHP3.0 的 mail() 函数。
  
     语法 : void mail(string to, string subject, string message, string add_headers);
  
     下面解释一下这几个参数的含义:
  
     * to - 指明邮件接受者的油箱地址。
  
     * subject - 邮件的 subject 标题栏的内容。
  
     * message - 邮件的 body ,也就是要发送的内容。
  
     * add_headers - 这个参数是可选的,用它来在邮件头尾部插入一个字符串。
  
     这样,如果把下面的这段脚本加到刚才的脚本中,插在最后一个 PRINT 语句的后面,我们就能够在显示后自动的发送邮件了:
  mail("$email", "Your request for information", "$namen
  Thank you for your interest!n
  We sell fresh corn daily over the Internet!
  Place your order at http://www.buy.com,
  and receive a free package of $preference!");
  mail("administration@buy.com ",
  "Visitor request for info.",
  "$name requested for information.n
  The email address is $email. n
  The visitor prefers $preference.");
  ?>
  
  
     特别要注意的是: mail() 函数只有在 SENDMAIL 也安装在服务器上的时候它才会工作。在大多数情况下, SENDMAIL 是同 PHP3.0 一起安装的。但如果 mail() 函数不能工作,就应该检查一下是否安装了 SENDMAIL 。
  
     但是如果有很多人都发送了他们的表单,仅仅用上面的方法,是无法把这些信息一一保存的。或许,你想统计到底有多少人喜欢吃苹果,多少人喜欢吃橘子。对于这类的任务,就有可能要用到数据库来存贮这些数据了。 MySQL 可以说是现在最快的数据库服务器之一,当你的应用对速度比较敏感的时候, MySQL 是一个比较好的选择,而且,它与 PHP3.0 的兼容性也比较好。
  
  

原文转自:http://www.ltesting.net