Header()在php中不起作用

时间:2015-08-27 14:22:26

标签: php

当我提交表单时,它不会重定向到另一个页面。 这是我的代码......

<?php
 include 'header.php';


  if ( $_REQUEST['commit'] )
{ 

 header("Location: ../newfolder/DIGITAL-FASTLANE-MULTILINGUAL-ENGAGEMENT.php"); } 

                  ?>
                <form name="digitran"  method='post' action='DIGITAL-FASTLANE-MULTILINGUAL-ENGAGEMENT.php' >

                <div class="digitran">
                <img style="height:186px;margin-top:-95px;width:180px;"  src="images/DigiTran_new.png"  />
                </div>

                    <span><input align='right' placeholder='Organization Name'  style='width:50%;' name='OrgName' type='text'> </span>
                    <span><input align='right' placeholder='Name' style='width:50%;' type='text' name='ContName'> </span>
                    <span><input type='text' align='right' placeholder='Designation' style='width:50%;' name='Designation'></span> 
                    <span><input type='text' align='right' placeholder='Email' style='width:50%;' name='Email'></span> 
                    <span><input type='text' align='right' placeholder='Phone' style='width:50%;' name='Phone'></span> 

                                   <input type='submit' name='commit' value='Register'>
                </form>

2 个答案:

答案 0 :(得分:0)

您的标头是否已发送?

很可能是的,由于header.php输出...

快速解决方法是在脚本中使用输出缓冲。像

这样的东西
<?php
ob_start();
include 'header.php';

然后你可以在脚本底部一直这样做:

ob_end_flush();

这是非常快速和肮脏但它应该做的工作。在使用该解决方案之前,我建议您一般熟悉输出缓冲。

答案 1 :(得分:0)

它将无法工作,直到您在php文件的第一行使用php header位置。

<?php
if (isset($_POST['commit'])) {
ob_start();
header("Location: ../newfolder/DIGITAL-FASTLANE-MULTILINGUAL-ENGAGEMENT.php");
    ob_clean();
    ob_end_flush();
}
?>

//your form here