2011-06-21 28 views
10

Olası Çoğalt:
Headers already sent by PHPZend'de "Başlık gönderilemiyor, başlık gönderilemiyor" nasıl düzeltilir?

Ben zend.I zend kullanarak iki alanı olan basit bir form oluşturmaya çalıştık için yeni. i göndermek tıkladığınızda düğme aşağıdaki hata var,

Fatal error: Uncaught exception 'Zend_Controller_Response_Exception' with message 'Cannot send headers; headers already sent in D:\xampp\htdocs\study\quickstart\application\controllers\EmployeeController.php, line 35' in D:\xampp\php\PEAR\Zend\Controller\Response\Abstract.php:282 Stack trace: #0 D:\xampp\php\PEAR\Zend\Controller\Response\Abstract.php(300): Zend_Controller_Response_Abstract->canSendHeaders(true) #1 D:\xampp\php\PEAR\Zend\Controller\Response\Abstract.php(727): Zend_Controller_Response_Abstract->sendHeaders() #2 D:\xampp\php\PEAR\Zend\Controller\Front.php(984): Zend_Controller_Response_Abstract->sendResponse() #3 D:\xampp\php\PEAR\Zend\Application\Bootstrap\Bootstrap.php(77): Zend_Controller_Front->dispatch() #4 D:\xampp\php\PEAR\Zend\Application.php(358): Zend_Application_Bootstrap_Bootstrap->run() #5 D:\xampp\htdocs\study\quickstart\public\index.php(25): Zend_Application->run() #6 {main} thrown in D:\xampp\php\PEAR\Zend\Controller\Response\Abstract.php on line 282 

ben beyaz boşluk kaldırılır ve tüm dosyalarda Kapatma etiketi verdi zend header already send problem

aşağıdaki linki, kontrol, Ama yine ben aynı hatayı alıyorum.

Bu hata nasıl giderilir?

ardından gösteriler EmployeeController.php:

<?php 
class EmployeeController extends Zend_Controller_Action 
{ 
    public function init() 
    { 

    } 
    public function indexAction() 
    { 

     $form = new Default_Form_Empdetails(); 
     $this->view->form = $form; 
     $request = $this->getRequest(); 
      $formData = $request->getPost(); 
     if ($request->isPost()) { 
      if ($form->isValid($request->getPost())) { 
       $empName = $form->getValue('empName'); 
       $empAddress = $form->getValue('empAddress'); 
       $emp = new Default_Model_DBTable_Employee(); 
       $emp->addAlbum($empName, $empAddress); 
       $this->_helper->redirector('index'); 
      } else { 
       $form->populate($formData); 
      } 
     } 

    } 
} 
?> 

Lütfen beni

+0

EmployeeController.php, satır 35'de ne var? –

+1

Tüm dosyalarda php kapanış etiketlerinden ('?>') Sonra beyaz boşlukları kaldırın. – NAVEED

+0

@NAVEED Evet kaldırıldı çalışır. Teşekkürler ama php etiketi – mymotherland

cevap

23

Çünkü bazı dosyada php kapanış etiketinden (?>) sonra fazladan beyaz boşluk olabilir yardımcı olur.

Ayrıca, bu Yayınla okuyun:

PHP development: why redirects don't work (headers already sent)

  • Herhangi HTML çıktısını,
  • Fazla boşluk açılışı öncesinde sayfanın başında dahil DOCTYPE bildirimi veya herhangi bir HTML etiketi, dahil Sayfanın PHP etiketi ya da İçindekiler için bir PHP etiketlerinin dışında Etiketler yazdırmadan önce() veya echo öğesinin lling başlığı() veya session_start()
  • Örneğin bir sayfa

başında bayt sırası işareti (BOM) kullanılarak sanal() içerecek şekilde dosyaları

  • kullanma:

    enter image description here

  • İlgili konular