Моя проблема похожа на При отправке формы не отображаются ее данные POST и связанные вопросы, но предлагаемые решения не применимы к моему проекту, поэтому в настоящее время я не использую перенаправления.
Я пытаюсь изучить Zend Framework. В текущем проекте, над которым я работаю, возникла проблема, когда суперглобальные переменные $ _POST и $ _GET, переданные из моей формы, возвращаются пустыми. Я работал над тем, чтобы упростить проблему, чтобы определить, где она вызывается, но я, кажется, попал в кирпичную стену. Похоже, что данные POST вообще не отправляются ...
My View:
<form method="post" action="/character/addsubmit">
<input type=hidden name='test' id='test' value='test'>
<input type='submit'>
</form>
Мой контроллер:
<?php
class CharacterController extends Zend_Controller_Action
{
public function addsubmitAction()
{
Zend_Debug::dump($this->getRequest());
echo "<br/>\$_POST: <br/>";
print_r($_POST);
echo "<br/>\$_GET: <br/>";
print_r($_GET);
echo "<br/><br/>";
if($this->_request->isPost()) {
echo "\$_POST Found<br/>";
}
else {
echo "\$_POST Not Found <br/>";
}
if ($this->_request->isGet()) {
echo "\$_GET Found<br/>";
}
else {
echo "\$_GET Not Found<br/>";
}
}
}
?>
Перейдя к форме, затем отправив (нажав на кнопку отправки), я получаю следующий вывод:
object(Zend_Controller_Request_Http)#8 (15) {
["_paramSources:protected"] => array(2) {
[0] => string(4) "_GET"
[1] => string(5) "_POST"
}
["_requestUri:protected"] => string(20) "/character/addsubmit"
["_baseUrl:protected"] => string(0) ""
["_basePath:protected"] => NULL
["_pathInfo:protected"] => string(20) "/character/addsubmit"
["_params:protected"] => array(3) {
["controller"] => string(9) "character"
["action"] => string(9) "addsubmit"
["module"] => string(7) "default"
}
["_rawBody:protected"] => NULL
["_aliases:protected"] => array(0) {
}
["_dispatched:protected"] => bool(true)
["_module:protected"] => string(7) "default"
["_moduleKey:protected"] => string(6) "module"
["_controller:protected"] => string(9) "character"
["_controllerKey:protected"] => string(10) "controller"
["_action:protected"] => string(9) "addsubmit"
["_actionKey:protected"] => string(6) "action"
}
$_POST:
Array ( )
$_GET:
Array ( )
$_POST Not Found
$_GET Found
Единственное, что действительно бросает меня в тупик, это то, что функция isGet возвращает true ..
Кто-нибудь с большим знанием Zend имеет представление о том, почему у меня так много проблем с отправкой форм с этой структурой? Есть ли какая-то конфигурация, которую я мог пропустить или, возможно, установил неправильно, что могло бы вызвать это?
Примечание: я использую Zend_Form для самого приложения, а также использую большую часть самого фреймворка, но я уменьшил его, пытаясь отладить эту проблему. Если вам потребуется дополнительная информация о моей конфигурации, я смогу предоставить ее.
Спасибо!
Редактировать:
Содержимое моего файла .htaccess:
[Я удалил эти строки, потому что это был неправильный файл,
Я все еще ищу правильный.]