Bir URL geçirerek PDF bulunuyor İplik ve $ _GET parametreleri?

2 Cevap php

Ben (http://www.digitaljunkies.ca/dompdf/) işe dompdf almaya çalışırken çok zaman geçirdim ama sorunlarla çalışmasını sağlamak. Ben oldukça karmaşık, doldurulacak bir web formu üreten bir PHP komut dosyası bir PDF oluşturmak için çalışıyorum. Komut dosyası $ _GET parametresi (kayıt numarası) kabul eder ve veritabanından veri ile buna formunu doldurur. Ben bir dize ya da gerçekten değer herhangi bir türü olarak komut içine bu verileri alma sorunum yok. Ne ben merak ediyorum iyi yaklaşım bir PDF bu tür veri dönüştürmek için ne olurdu?

Şöyle akışı: kullanıcı formunu tamamlar ve ben bir "PDF olarak kaydet" düğmesini eklemek istiyorum hangi onay sayfasına alınır. Bu noktada iki şeyden biri şu anda tarayıcıda görüntülendiğinde sayfa bir pdf veya kendisi için bir çağrı (scriptname.php? Id = xyz) PHP'nin http_get gibi bir şey kullanarak yapılabilir (doğrudan bükülmüş olabilir, olabilirdi ) fonksiyonu ve bir dize olarak HTML saklayın. Oradan bir PDF olarak doğru bir temsil hazırlamak ile ilgili sorunlar yaşıyorum.

Ben FPDF hakkında bazı konuşma duydum ama onların örnekler gerçekten kaynağı olarak dinamik verileri kullanabilirsiniz inanmak bana yol, ama ben bu konuda yanlış varsa beni düzeltin lütfen yoktur.

Herhangi bir giriş mutluluk duyacağız.

- Nicholas

2 Cevap

Eh, ben dompdf bilmiyordum. Ticari bir kütüphane (PDFlib) ya da modası geçmiş (?) Bir (3 yıl için güncellenmiş değil CPDF,) ya kullanır garip. Ama evet, sürece çalışır gibi (kavramı ilginç).

Ben e-ticaret ürünleri faturalar gibi, "kaynak olarak dinamik verilerini kullanmak" (ya da daha doğrusu, ben statik PDF üreten işaret değil bakın!), Ama FPDF çeşitli dinamik belgeler oluşturmak için kullanılır demek ne anlamıyorum. Gerçi, Unicode verileri işlemek için (TCPDF gibi) çatal kullanarak insanlar gördüm.

You can't transform an HTML page to PDF with FPDF, but you have a quite precise control of layout, using concept of cells with data.
You can see such kind of code there: http://svn.prestashop.com/trunk/classes/PDF.php

Bu konu ile karşı karşıya Geçmişte, ben bir PDF şablonuna veri yerleştirme için FPDF kullandık. Ardından, uygun HTTP başlığını ayarlayarak dedi PDF kaydetmek için kullanıcı için kutusunda Yükle / Kaydet açmak pop tarayıcı zorlamak.

FPDF / FPDI genişleten bir sınıf uygun, zaten oluşturduğunuz bir şablonu PDF bir PDF oluşturmak için aşağıdaki gibi bir şey kullanmak (http://www.setasign.de/products/pdf-php-solutions/fpdi/):

$this->setSourceFile('pdf_template.pdf');
$template_page = $this->importPage(1, '/MediaBox');
$this->useTemplate($template_page, 0, 0);

Sonra, FPDF kullanarak çıktı için PDF oluşturmak var:

$this->Output();

Ayrıca burada bulunan komut dosyası kullanarak biçimlendirmek için (sınırlı) HTML kabul FPDF uzatabilirsiniz: http://www.fpdf.org/en/script/script41.php