1

当我isset()从另一个 PHP 页面发布数据时使用该函数时,它工作正常。但是当我isset()在同一页面中使用该功能来处理表单时,它不会发布数据。我在 url 中看到了数据,但isset()似乎不起作用。表格保持空白,没有任何反应。

这是我目前正在处理的表格:

<h3>Register</h3>

<?php 
   if(isset($_POST["register_email"],$_POST["register_name"],$_POST["register_password"]))      
   {
       $register_email=$_POST['register_email'];
       $register_name=$_POST['register_name'];
       $register_password=$_POST['register_password'];

       $errors=array();

       if(empty($register_email) || empty($register_name) || empty($register_password))
       {
           $errors[]='All fields required';
       } 

       if(!empty($errors))
       {
           foreach($errors as $error)
           {
               echo $error,'<br />';
           }
       } 
       else {
           echo 'ok';
       }
   }
?>

<form action="" method="">
    <p>Email: <br /><input type="email" name="register_email" size="35" maxlength="255"></p>
    <p>Full name: <br /><input type="text" name="register_name" maxlength="35"></p>
    <p>Password: <br /><input type="password" name="register_password" maxlength="35"></p>
    <p><input type="submit" value="Register"></p>
</form>
4

2 回答 2

7

我认为您忘记将表单的方法设置为发布:

<form action="" method="post">
于 2012-07-07T18:33:03.657 回答
0

在我的情况下,只设置一个,在这种情况下输入的名称注册和 isset 注册.isset 将引用输入的名称

if(isset($_POST["register"])) input type="submit" value="Register" name="register">

于 2015-11-07T19:59:55.757 回答