【发布时间】:2012-12-07 07:45:44
【问题描述】:
我的网站上有一个表单,每次提交此表单时,我都会收到 301 烫发,然后是 302 重定向,然后是另一个 302 重定向。由于这些重定向,我的数据没有提交。我没有运气找到这些重定向。在目录的根目录中没有导致此问题的 .htaccess 文件。
我在哪里寻找摆脱重定向?任何提示将不胜感激。
提交时我的开发者工具转到 301、302、302。
这是我表单的开始。
<form action="index.php?view=ticket_submit" method="POST" name="QContact" runat="vdaemon">
当这个提交时,我有一个 case 语句查找 ticket_submit。由于 var_dump 和 exit 方法,它甚至没有到达 ticket_submit 。它只是回到根 index.php 文件。
private function ProcessView($type){
$ticket = new Ticket();
$ticket->CurrentUser = $this->CurrentUser;
$ticket->TicketUser = $this->CurrentUser;
$ticket->setBlankTicketHTML();
$title = 'New ROI';
$prior_count = count($this->Containers);
$_SESSION['vdaemon'] = '1';
if($_SESSION['al'] == 't' && $type['view'] == ''){
$type['view'] = 'summary';
}
switch($type['view']){
case 'ticket_edit':
$ticket->ticketid = (int)$this->Request['ticketid'];
$ticket->TicketUser = array();
$ticket->fillTicket();
if(($this->CurrentUser['userid'] != $ticket->TicketUser['userid']) && ($_SESSION['al'] == 't' || $_SESSION['al'] == 'r')){
$ticket->setViewTicketHTML();
$title = "Error: You can only Edit items you have created.";
$_SESSION['vdaemon'] = '0';
} else {
$ticket->setEditTicketHTML();
$title = 'Edit ROI';
$_SESSION['vdaemon'] = '1';
}
break;
case 'ticket_submit':
var_dump('test');
exit();
$ticket->ticketid = (int)$this->Request['ticketid'];
$ticket->TicketUser['useremail'] = $this->Request['useremail'];
$ticket->saveTicket(0);
$_SESSION['vdaemon'] = '0';
if($_REQUEST['viewquick'] == 'quick'){$quick = 'ticket_quick_view';}else{$quick = 'ticket_filed';}
if($_REQUEST['edit'] == 'yes') {
echo 'works';
}else {
header("Location: ?view=".$quick."&ticketid=".$ticket->ticketid);
echo 'workss';
}
exit;
break;
【问题讨论】:
-
您查看过您的 apache 错误日志吗?也许一点代码可以说明问题?
-
apache 错误日志在哪里?
-
@wowzuzz 在标有“日志”的文件夹中。这是部署环境,还是本地测试环境?你用什么来托管它?您是否有任何虚拟主机与此特定站点共享命名空间?
-
这是一个已部署的环境。它位于使用 apache 和 lighttpd 的云服务器上。不,没有虚拟主机。
-
我摆脱了 301 错误和另一个 302,因为我将它移到了一个新文件夹。现在它向我显示 302。除非 302 已修复,否则我的数据不会 POST 对吗?
标签: php http-status-code-301 http-status-code-302 http-redirect