如果没有帖子数据重定向回注册页面

时间:2013-11-25 23:22:57

标签: php

我有一张表格:

<form id='register' action='http://mydev/test/register' onsubmit="return validateForm()" method='post' accept-charset='UTF-8'>
<fieldset>
<legend><br/>Create An Account</legend><br/>
<input type='hidden' name='submitted' id='submitted' value='1'/>
<!--<label for='username' >Username*: </label>
<input type='text' name='username' id='username' maxlength="50" /><br/><br/></br/>-->
<label for='email' >Email Address*:</label>
<input type='text' name='email' id='email' maxlength="50" /><br/><br/>
<label for='password'>Password:</label>
<input type="password" name="password" id="password" value="" size="32" /><br><br>
<label for='retype_password'>Re-Enter Password:</label>
<input type="password" name="password-check" id="password-check" value="" size="32" /><br><br>
<label for='cpassword' >&zwnj;</label>
<input type="submit" value="Submit" id="submit">
</fieldset>
</form>

我的行动页面不会向他们的电子邮件发送激活链接:

$shopper = new Shopper();
$shopper->set_email($_POST['email']);
$shopper->set_username($_POST['email']);
if($shopper->create($_POST['password']))
    {
    $message = "<br>User created<br>" . "An activation code has been sent<br>";
    $token = $shopper->request_activation();
    }
    else
        {
        $message = "Could not create user<br>";
        } 

我的问题是......如果没有帖子数据,他们会以某种方式结束register.php页面..只需将它们重定向回new_registration.php页面。

我知道我应该使用header("location:../../new_registration.php");

我对如何检查丢失的帖子数据感到有点困惑?

我应该使用empty吗?

我最终使用了:

    if (empty($_POST['email']['password'])) {
    header('location:http://myjeromesdev/test/new_registration');
}
    else {
$shopper = new Shopper();
$shopper->set_email($_POST['email']);
$shopper->set_username($_POST['email']);
if($shopper->create($_POST['password']))
    {
    $message = "<br>User created<br>" . "An activation code has been sent<br>";
    $token = $shopper->request_activation();
    }
    else
        {
        $message = "Could not create user<br>";
        } 

}
?>
<p>
<?php 
echo $message 
?></p>

3 个答案:

答案 0 :(得分:0)

是的,你可以使用空,但你也应该检查收到的$ _POST数据是否是你正在等待的。

答案 1 :(得分:0)

 if(!empty($_POST['email']) && !empty($_POST['password']))
 {
      $shopper = new Shopper();
      $shopper->set_email($_POST['email']);
      $shopper->set_username($_POST['email']);
      ...
 }
 else
 {
  //Your redirect
 }

答案 2 :(得分:0)

你可以在提交时使用isset和set name(不设置名称也可以)你可以使用你输入的一个名字

请参阅此代码

<input type="submit" name="submit" value="submit"/>


if(isset($_POST['submit'])){
    //code is have 
}else{
    header('URL');
}

if you want if all post is setted u can use AND
isset($_POST['password']) && isset($_POST['email']) and so on

希望这个答案可以帮助你

相关问题