2013-06-10 15 views
6

Magento 1.5 üzerinde çalışıyorum ve faturalarımdan herhangi birini yazdırmaya çalıştığımda arka sayfada beyaz/boş bir sayfa var.Magento - arka sayfada fatura yazdırırken boş/boş sayfa

[Mon Jun 10 12:35:53 2013] [error] [client 196.203.53.248] PHP Fatal error: Declaration of Zend_Pdf_FileParserDataSource_File::__construct() must be compatible with Zend_Pdf_FileParserDataSource::__construct() in /home/webmaster/public_html/www/lib/Zend/Pdf/FileParserDataSource/File.php on line 41, referer: http://www.example.com/index.php/admin/sales_invoice/view/invoice_id/15/

+1

Eğer hata günlüğü, magento ve php ikisini de kontrol sorunu düzeltildi

abstract public function __construct($filePath); 

için? – Mufaddal

+0

evet yaptım, şüpheli bir şey yok! –

cevap

10

Bu: Ben adım adım hata ayıklama denedim

, sorun ben (bir üretim moduna ben) üzerinde

Güncelleme reportingi koyamazsınız ki PHP 5.4.4-14 sürümü ve Zend Framwork arasında bir uyumsuzluk sorunudur.

__construct() yorum oluşturma onu Sabit ve __destruct() yöntemleri lib/Zend/Pdf/FileParserDataSource.php

// abstract public function __construct(); 

    /** 
    * Object destructor. Closes the data source. 
    * 
    * May also perform cleanup tasks such as deleting temporary files. 
    */ 
// abstract public function __destruct(); 

teşekkür ederiz içinde!

+0

Hayat koruyucu, teşekkürler! Böyle garip bir konu – JasonDavis

+0

sahip olmak için bekliyoruz! –

+0

Harika, teşekkürler. __construct yöntemini değiştirmek için – Michael

13

Düzenleme

lib/Zend/Pdf/FileParserDataSource.php 

değişiklik

abstract public function __construct(); 

için

abstract public function __construct($filePath); 
+0

tam olarak doğru çözümdür. rica ederim! –

+0

Awasome ...... bana yardım et. Bana bu değişiklikleri neden yaptın lütfen. –

+0

Zend_Pdf_FileParserDataSource_File :: __ construct(), Zend_Pdf_FileParserDataSource :: __ construct() ile uyumlu olmalıdır. Bunu başarmak için aynı yöntem imzasına sahip olmanız gerekir, tam olarak yukarıda gördüğünüz şekilde paramı geçmeniz gerekir. –

6

Mischa Leiss en ve Rastaking en düzeltmeleri, ben eklemek istiyorum düşündüm tamamen doğru olduğunu

de dosya düzenlemeyi
[magento root]/lib/Zend/Pdf/FileParserDataSource.php 

en iyi uygulama değildir. Dosyayı

[magento root]/app/code/local/Zend/Pdf/FileParserDataSource.php 

ile düzeltmek ve dosyayı orada düzenlemek daha iyidir. Magento, dosyanın varsayılan sürümü yerine bu geçersiz kılma sürümünü kullanacaktır ve gelecekte de (Magento çekirdeğini yükseltmeye çalıştığınızda olduğu gibi) sorunlarla karşılaşmanız daha az olasıdır. Ayrıca, bu muhtemelen bir yorum olmalıydı, ancak biçimlendirme olmadan okumak zordu.

0

Değişim

abstract public function __construct(); 

İlgili konular