젠드 프레임 워크 버전 1.11에서 작업 중입니다. 다음과 같은 문제가 발생했습니다.
양식을 제출하면 브라우저에서 "수신 된 데이터 없음 : 서버가 보낸 웹 페이지를로드 할 수 없습니다 데이터 없음. " (크롬) 및 "페이지로드 중 서버 연결이 재설정되었습니다." 파이어 폭스에.
지금, 비슷한 구성으로 다른 컴퓨터에서 오류를 재현 할 수 없기 때문에 내 컴퓨터와 관련이 있습니다. 서버 버전 (Apache 2.4.7로 업그레이드 한 서버, 다른 서버는 Apache 2.2)으로 저장합니다.
지금 요청이 겪고 코드입니다 : $이의젠드 프레임 워크 - 데이터가 수신되지 않음
$form = new Website_Form_ArtUpload();
if ($this->getRequest()->isPost())
{
$response = $this->_getService()->upload($this->getRequest()->getPost());
My_Logger::log(print_r($response));
if (!$response->isValid()) {
if($response->getData() instanceof Zend_Form) {
$form = $response->getData();
}
if($response->hasMessages()) {
My_Logger::log(print_r($response->getAllMessages()));
$this->view->messages = $response->getAllMessages();
}
} else {
$this->_helper->redirector->gotoSimple('new', 'product', 'website');
return;
}
}
내용 -> _의 getService() - 한번> 업로드()
// Validate the form
$form = new Website_Form_ArtUpload();
if (!$form->isValid($data))
return new My_Service_Response(
My_Service_Response::FAILURE,
$form,
array(My_Model_Message::MESSAGE_TYPE_ERROR => $this->getTranslator()->_('The product cannot be uploaded'))
); //here it halts
그래서, 나는 어떤이 없습니다 왜 모든 데이터가 괜찮은지 데이터가 유효하지 않아야한다는 아이디어. 그러나 응답이 실패하고 메시지 ($this->view->messages = $response->getAllMessages()
가 메시지를 기록함)가 있기 때문에 데이터가 실제로 유효하지 않다고 가정하면 '제품을 업로드 할 수 없습니다'라는 멋진 오류가없는 이유는 없습니다.
다른 코드 나 로그가 필요한 경우 제공해 주시면 감사하겠습니다.
참고 : 오류가있는 다른 양식은 메시지를 올바르게 반환합니다. 동일한 서버 버전을 사용해야한다고 말하지 말아라. 나도 알아.하지만 언젠가는 나중에 2.4로 마이그레이션하기를 원한다.