服务器端验证php

时间:2011-08-30 11:10:30

标签: php


我试图在php中验证我的页面服务器端...为此我必须发布到同一页面以检查控件值。但验证成功后,如何使用post方法重定向到另一个页面?我可以使用get来完成这个但是有没有办法使用post方法从代码本身重定向页面?

简单来说,我正在尝试寻找一种解决方案,使用post方法重定向我的页面,但是使用我的php代码,而不是在表单标记中设置action属性。

谢谢,
RIZWAN

2 个答案:

答案 0 :(得分:0)

当您想要获取新页面时,从PHP代码重定向到另一个页面:

<?php
  header("HTTP/1.1 303 See Other"); 
  header("Location: http://www.example.com/page/to/redirect-to.html");
?>

我在这里使用303,HTTP/1.1 spec说:

  

可以在不同的URI下找到对请求的响应,并且应该使用该资源上的GET方法检索。此方法主要用于允许输出POST激活的脚本以将用户代理重定向到选定的资源。

并使用301,302或307 doesn't always get you a redirect-to-GET重定向。

答案 1 :(得分:0)

<form action="<?php echo $_SERVER['PHP_SELF']; ?> action="post">

...表单代码的其余部分

提交按钮

<input type="submit" name="formsubmit" value="submit button text" />

位于页面顶部的某处

<?php 
if(isset($_POST['formsubmit))
{
  //do validation and if validated - redirect to new page
}
  else {
 // display errors and current page with form again
}
?>