歌在飞广场舞背面:php表单操作相关汇总及代码示例

来源:百度文库 编辑:中财网 时间:2024/04/28 04:09:51
form.php:

/**
   * 访问表单变量
   * 在php脚本中,可以以php变量的形式访问每一个表单域,其中php变量名称必须与表单的名称一致。
   * 3种方式访问表单数据:
   * $userName、不推荐使用
   * $_POST["userName"]、推荐使用
   * $HTTP_POST_VARS["userName"] 不推荐使用
   */

    姓名:
   
   
    /**
    *字符串连接,使用.就可以
    *请看form_post.php
    */
   


form_post.php:

    //简短风格,不提倡用,因为它会混淆和普通变量的关系
   echo $userName;
  
   //如果表单的method采用GET方式,则取值需要用$_GET['userName']
   echo $_POST['userName'];//将上一张表单中name的名称的value值提取出来
  
   /**
    *字符串连接,使用.就可以
    *请看form_post.php
    */
   //可以将接收到的表单数据赋值给一个变量
   echo "
";
   $userName = $_POST['userName'];
   echo "这个人的名字是:".$userName;
?>
*****************************************************************************************************************************************
form1.php:

  /**
   * 按收及验证表单数据
   * GET与POST:处理表单时,必须指定输入到表单的信息以何种方式传输到目的地(method="").对此,web开发人员
   * 可以采用get和post。使用get方式发送数据时,所有域都追加到浏览器的url后面,并且为数据随url地址发送。采用post
   * 方法时,值会作为标准值发送。
   * php分别使用$_GET和$_POST超全局变量来处理GET和POST变量。通过使用这两个超全局变量,可以准确地指定信息应当来自哪里,并以你希望的方式处理数据   
   * 使用$_GET或$_POST来接收数据:
   * 1.$_GET['username'],发送的表单method必须是get
   * 2.$_POST['username'],发送的表单method必须是post
   * 3.采用isset()来验证$_GET['username']超级全局变量是否定义
   * 4.使用htmlspecialchars()函数将HTML特殊字符进行过滤
   *
   * 对数据有效性进行验证:
   *
   */
 
?>
 

     姓名:

    
  


form1_post.php:

  //第一步,接收前面表单中的值。username
  //接收$_POST['username']
  echo '接收到表单输入的值为:';
  echo $_POST['username'];
  echo '
';
  //使用isset()验证是否正常提交是很准确的。推荐使用它去判断。
  /**
   * isset():理解为变量是否创建,而不关心变量为什么内容。如空字符串也是字符串。
   * empty()与==功能基本相同,表示内容为空,未填写内容而已。但与isset()本质不一样。
   */
  if(isset($_POST['username'])){
      echo '正常提交.';
      $username = $_POST['username'];
      //在输出之前,为了页面的安全性,
      //对表单输入的值去左右空格
      $username = trim($username);
      $username = htmlspecialchars($username);//保证输入的内容原本地进行取出
      echo '表单提交的值为:'.$username;
  }else{
      echo '非正常提交';
  }
  //使用is_numeric()函数判断输入的值是否合为数字。对于验证手机号吗及QQ号。
?>

****************************************************************************************************************************************
form2.php:

?>

     用户名:

     密 码:

     验证码:1234

     邮件:

     介绍:
   
    
  


form2_post.php:

  //1.设置页面编码。注意,并不是文件的编码
  header('Context-Type:text/html;charset=gbk');
 
  //2.先验证是否是form2.php提交过来的。只需要按扭提交过来,就说明了表单中的其它的值超全变量都提交过来了
  if (!isset($_POST['send'])||$_POST['send']!='提交'){
      //如果send是存在的,那么就说明是点击提交过来的,否则就跳回到form2.php页面
    header('Location:form2.php');
      exit; //跳回form2.php页面去了,就不需要再执行下面的了,直接退出
  }
 
  //3.接收所有数据,并且进行过滤
  $username = trim($_POST['username']);
  $password = $_POST['password'];
  $code = trim($_POST['code']);
  $email = trim($_POST['email']);
  $content = htmlspecialchars(trim($_POST['content']));

  //对表单进行验证。用户名介于2位到10位之间、
  if (strlen($username)<2 || strlen($username)>10){
      //使用js来跳转,有提示的
      echo "";
      //header('Location:form2.php');
      exit;
  }
 
  //密码不能少于6位
 
  if (strlen($password<6)){
      echo "";
      exit;
  }
 
  //验证码必须是4位且为数字
  if (strlen($code)!=4 || !is_numeric($code)){
      echo "";
      exit;
  }
 
  //电子邮件验证
  if (!preg_match('/([\w\.]{2,255})@([\w\_]{2,255}).([a-z]{2,4})/',$email)){
      echo "";
      exit;
  }
  //输出
  echo '用户名:'.$username.'
';
  echo 'Email:'.$email.'
';
  echo '个人介绍:'.$content;
?>