php头函数在插入后不起作用(godaddy托管站点)


php header function not working after insert (godaddy hosted site)

插入完成后,我遇到了重定向问题。我在本地机器上测试了它,它运行良好,但在godaddy网站上,插入运行良好,然后它停止(它不会重定向到所需的页面)并返回"500内部服务器错误"。

执行插入和重定向的页面

<?php    
$path = $_SERVER['DOCUMENT_ROOT'];
$path .= "'panel'config.php";
include($path);
if(isset($_POST['btn-member']))
{
$ftname = trim($_POST['FIRST_NAME']);
$ltname = trim($_POST['LAST_NAME']);
$email = trim($_POST['EMAIL_ADD']);
$passw = trim($_POST['PASSWORD']);
$vpass = trim($_POST['VERIFY']);
if(empty($ftname))
{
$error = "Enter your First name !";
$code = 1;
}
else if(empty($ltname))
{
$error = "Enter your Last name !";
$code = 2;
}
else if(empty($email))
{
$error = "Enter your personal email address!";
$code = 3;
}
else if(!preg_match("/^[_'.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+'.)+[a-zA-Z]{2,6}$/i", $email))
{
$error = "Invalid E-mail Format !";
$code = 3;
}
else if(strlen($contact) > 10)
{
$error = "Phone Number should not contain more than 10 numbers !";
$code = 4;
}
else if(empty($passw))
{
$error = "Enter a Password !";
$code = 5;
}
else if(strlen($passw) != strlen($vpass) )
{
$error = "Your Password do not match, Try Again !";
$code = 6;
}
else
{
 // Insert
$fields = array('USER_ID','FIRST_NAME','LAST_NAME','EMAIL_ADD','PASSWORD');
$_POST['PASSWORD'] = $user->hash_password($_POST['PASSWORD']);
if($insert->insert_all('members',$insert->insertString($fields,$_POST),$fields,$_POST))
{
    header("Location: members.php?inserted");
}else
{
    header("Location: members.php?failed");
}
}
}
?>

成员.pp

<?php 
$path = $_SERVER['DOCUMENT_ROOT'];
$path .= "'panel'config.php";
include($path);
include_once 'Header.php';
?>
            <div class="span9">
                <div class="content">
                    <div class="module">
                        <div class="module-head">
                            <h3> MEMBERS</h3>
                        </div>
                        <div class="module-option clearfix">
                            <?php
               if(isset($_GET['inserted']))
                        {
                     ?>
                     <div class="alert alert-success">
                        <button type="button" class="close" data-dismiss="alert">×</button>
                        <strong>SUCCESS</strong> YOU HAVE SUCCESSFULLY INSERTED
                    </div>
                    <?php
                         }
               else if(isset($_GET['failed']))
                         {
                      ?>
                      <div class="alert alert-error">
                            <button type="button" class="close" data-dismiss="alert">×</button>
                            <strong>ERROR!</strong> TRY AGAIN
                      </div>
              <?php
                         }
                  ?>
</div>
</div>
</div>
</div>
<?php 
include_once 'footer.php';
?>

我在这里测试了你的文件,发现问题不在header()函数中,而是在你的文件members.php中。为了检查它,请执行以下测试:-删除文件"members.php"的所有行,只放一条简单的消息,如:<?php echo "<h1> test </h1>"; ?>

请通过放置出口进行检查;就在页眉功能之后。问题可能出现在页面下方的一些相关代码中。

重定向的一种替代方式如下。

echo "window.location.href='your_url_goes_here'";exit;