Hallo Forum!
Will für meine Seite einen PDF download für jede Seite anbieten und hab deshalb den PDF Generator installiert. Hat auch so weit alles funktioniert nur bietet das System mir keine PDFs an sondern eine index.php. Wenn ich die index.php dann lokal in z.b meine_home.pdf umbenenne, dann funktioniert alles perfekt! Nun was mache ich falsch?
Will doch nur das diese kleinigkeit, das durch klick auf das PDF Symbol die Seite als PDF zum download angeboten wird.
Hier mal mein Code :
###Pdf ausgeben
pdfCreator = TEXT
pdfCreator {
value = Druckversion der aktuellen Seite
postUserFunc = tx_pdfgenerator2->makePdfLink
postUserFunc.include_post_vars = 1
postUserFunc.target = _blank
postUserFunc.popup = 0
postUserFunc.no_blur = 1
postUserFunc.attachment = 2
}
und meine .htaccess
RewriteEngine On
RewriteRule ^typo3$ - [L]
RewriteRule ^typo3/.*$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* /index.php
Ich arbeite mit Realurl und typo 4.0.2 - Provider Domain Factory!
Gute Nacht - geh jetzt erstmal schlafen. Vielleicht hab ich ja einen Geistesblitz heute Nacht
Servus! Ichb in nochmal!!
Also - da mich das Problem nicht in Ruhe lässt hier meine Änderungen!
Hier habs jetzt soweit gebracht, das ich vielleicht das Problem einkreisen kann.
Hab jetzt meine .htaccess geupdatet wie es im Manuell steht :
RewriteEngine On
RewriteRule ^typo3$ - [L]
RewriteRule ^typo3/.*$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* /index.php
RewriteRule ^[^/]*\.html$ index.php
RewriteRule ^[^/]*\.pdf$ index.php
ER zeigt jetzt zwar in der URL Leiste nicht den Namen, aber immerhin die ID Nummer+ pdf ( z.b .../11.pdf?attachment=2 ). Das is in Ordnung! Aber da hört es auch schon auf, in ordnung zu sein!!! Es bringt folgenden Fehler :
Error!
Reason: Segment "11.pdf" was not a keyword for a postVarSet as expected!
Hängt das ganze dann mit der localconf zusammen? Hier definiere ich ja für realUrl alle postVarSets....hmmm. Hat jemand eine Idee?
Grüße und Danke
Auch 3 Jahre später habe ich mit PDF_Generator2 genau das selbe Problem...
Kann inzwischen jemand helfen?:o
Grüße
Nicole
Das ist ein bekanntes Problem, immer wenn über PHP eine Datei generiert wird tritt das in einigen Browsern auf, trotz Übergabe des korrekten Mime-Types. Eine Lösung ist, an die URL, die das PDF generiert, einen Parameter mit dem Namen der Datei anzuhängen:
&filename=meine-datei.pdf
Dann müssten eigentlich alle Browser die Datei auch mit diesem Namen speichern. Über RealUrl bzw. über ein Anpassung der config-Datei von RealUrl müsste es auch möglich sein, das so zu übergeben:
/filename/meine-datei.pdf
Das habe ich allerdings noch nicht gemacht, mir reicht die obige Lösung.
Gruß
Peter
Hi!
Das geht nun soweit, allerdings würde ich noch gerne wissen, wie man das Template erstellt, bzw. wie das aussehen kann (mit Markern und so). Habe eine Vorlage erstellt, das mit TV gemappt und es als Unterelement vom Roottemplate und für die PDF-Version eingestellt.
Neben pdf_generator2 habe ich noch pdf_generator2_fonts und tv_pdfgen installiert.
Ich bekomme die Ausgabe vom Inhalt aus irgendeinem Grund den ich nicht verstehe, aber meine CSSformatierung greift nicht und ich weiß nicht, wie ich das einstelle.
Im ext-template, das ich für das PDF erstellt habe steht hierzu:
pdf_generator = PAGE
pdf_generator {
includeCSS.file1 = http://localhost:8508/fileadmin/templates/css/pdf.css
includeCSS.file1.media = print
config {
typeNum = {$extension.pdf_generator2.typeNum}
pageGenScript = EXT:pdf_generator2/gen_pdf.php
admPanel = 0
xhtml_cleaning = 0
USERNAME_substToken =
ftu = 0
disableCharsetHeader = 1
prefixLocalAnchors = 0
}
50 >
50 = USER
50.userFunc = tx_templavoila_pi1->main_page
50.childTemplate = pdf #Templatetyp des Templavoila-Subtemplates, nicht der Name !!
}
Es greift ein bisschen aber nicht vollkommen... Wo kann da ein Fehler sein?
Außerdem kann ich keine Seiten mit Plugins wie Formular, Kalender oder News als PDF ausgeben....
Bin für jeden Hinweis dankbar 🙂
Gruß
Nicole
Hallo! Ich nochmal...
Inzwischen bekomme ich keine Ausgabe mehr sondern nur dir Fehlermeldung "File was not found (2)" und mein Seiteninhalt wird gedoppelt...
Ich poste mal meine Sachen:
.htaccess
#PDF-Generator
#RewriteRule .* index.php [L]
#RewriteRule ^[^/]*\.html$ index.php
#RewriteRule ^[^/]*\.pdf$ index.php
ErrorDocument 404 /error.html
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^typo3$ /typo3/index_re.php
RewriteRule ^[^/]*\.html$ index.php
RewriteRule ^[^/]*\.pdf$ index.php
Extentiontemplate-Setup:
pdf = TEXT
pdf {
value = Diese Seite als PDF
postUserFunc = tx_pdfgenerator2->makePdfLink
postUserFunc.target = _blank
# postUserFunc.include_post_vars = 1
typolink.additionalParams.insertData = 1
# typolink.parameter.data = page:uid
# typolink.additionalParams =&type=123
# postUserFunc = tx_pdfgenerator2->makePdfLink
}
lib.pdf < pdf
pdf_generator2 = PAGE
pdf_generator2 {
typeNum = 123
use_pdflib = 0
config {
pageGenScript = EXT:pdf_generator2/gen_pdf.php
simulateStaticPdf = 1
cssmedia = all
pdf_generator2.size = A4
}
includeCSS.file1 = fileadmin/templates/css/pdf.css
includeCSS.file1.import = 0
includeCSS.file1.media = all
includeCSS.file2 = fileadmin/templates/css/content.css
includeCSS.file2.import = 0
includeCSS.file2.media = all
50 = CONTENT
50 {
table = tt_content
select.orderBy = sorting
select.where = colPos = 0
select.languageField = sys_language_uid
}
}
HTML-Template:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body style="background-color:red;">
<!-- ###DOCUMENT### -->
<!--TYPO3SEARCH_begin-->
###RSYS_CONTENT_0###
<div class="printlink">###RSYS_PDFLINK###</div>
<!-- ###DOCUMENT### -->
###BREADCRUMBS###
<div class="left_side">###LEFT###</div>
<div class="content">###CONTENT###</div>
<div class="right_side">###RIGHT###</div>
###FOOTER###
</body>
</html>
Außerdem habe ich das obige Template mit TemplaVoilà gemappt und diese Daten als PDF und Unterobjekt des Haupttemplates gespeichert.
Ich arbeite mit:
TYPO3 4.3.3
pdf_generator2 0.5.2
pdf_generator2_fonts 0.0.1
tv_pdfgen 1.1.1
Kann mir bitte jemand sagen, wie ich zumindest wieder eine PDF-Ausgabe erwirke?
Ich bin für jeden Hinweis dankbar!
Grüße
Nicole
Hallo,
also ich bekomm es einfach nicht hin aus der index.php eine index.pdf zu erzeugen. #angry#
wo muss ich den genannten codeschnipsel "&filename=meine-datei.pdf" einbinden?
ich arbeite mit:
typo3 4.4.0
pdf_generator2 0.5.2
pdf_generator2_fonts 0.0.1
tv_pdfgen 1.1.1
cooluri
Grüße tri
Hallo,
also ich bekomm es einfach nicht hin aus der index.php eine index.pdf zu erzeugen. #angry#
wo muss ich den genannten codeschnipsel "&filename=meine-datei.pdf" einbinden?
ich arbeite mit:
typo3 4.4.0
pdf_generator2 0.5.2
pdf_generator2_fonts 0.0.1
tv_pdfgen 1.1.1
cooluri
# ---------- PDF GENERATOR ----------
pdf_generator = PAGE
pdf_generator {
typeNum = 123
use_pdflib = 0
config {
pageGenScript = EXT:pdf_generator2/gen_pdf.php
simulateStaticPdf = 1
cssmedia = all
pdf_generator2.size = A4
}
includeCSS.file1 = fileadmin/templates/css/dtp_print.css
includeCSS.file1.import = 0
includeCSS.file1.media = all
10 = TEMPLATE
10 {
template = FILE
// Template HTML personnalisé pour l'affichage des colonnes dans le pdf
template.file = fileadmin/templates/ext/pdf_form.html
workOnSubpart = DOCUMENT_BODY
marks.INHALT = CONTENT
marks.INHALT {
table = tt_content
select {
orderBy = sorting
where = colPos = 1
#languageField = sys_language_uid
}
}
}
}
#Wichtig wenn der Content im html-Template angegeben wird da sonst der Inhalt zwei mal angezeigt wird
pdf_generator.50.select.where = colPos=
# ---------- end PDF GENERATOR ----------
//Pdf ausgeben
lib.pdfbtn = IMAGE
lib.pdfbtn {
file = fileadmin/templates/images/btn_expose.png
file.width = 117
file.height = 20
stdWrap.postUserFunc.target = _blank
stdWrap.postUserFunc = tx_pdfgenerator2->makePdfLink
stdWrap.postUserFunc.parameter.data = page:uid
stdWrap.postUserFunc.additionalParams.insertData=1
stdWrap.postUserFunc.additionalParams =&type=123
}
lib.pdfbtn < pdf
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Expose</title>
</head>
<body>
<!-- ###DOCUMENT_BODY### -->
<div id="header_form">
<div id="header_linie_pdf"></div>
<div id="logo_pdf"></div>
</div>
<div id="CONTENT_pdf">
###INHALT###
</div>
<!-- ###DOCUMENT_BODY### -->
</body>
</html>
Grüße tri
Hi tri!
Falls es dich tröstet: Ich bekomme inzwischen auch keine anständige Ausgabe mehr.
pdf = TEXT
pdf {
value = Diese Seite als PDF
postUserFunc = tx_pdfgenerator2->makePdfLink
postUserFunc.target = _blank
postUserFunc.include_post_vars = 1
typolink.additionalParams =&type=123
typolink.additionalParams.insertData = 1
# typolink.parameter.data = page:uid #Wenn das hier eingeblendet, dann kein neues Fenster und kein PDF
}
lib.pdf < pdf
Mit diesem Code wird aus meinem shop.html ein shop.pdf.
Sonst habe ich in meinem Script noch:
pdf_generator2 = PAGE
pdf_generator2 {
stylesheet = fileadmin/templates/css/layout.css
#ist die gleiche, die bei der Extensioninstallation angegeben wird
typeNum = 123
size = A4
pdfversion = 1.3
target= _blank
50 >
50 = USER
50.userFunc = tx_templavoila_pi1->main_page
50.childTemplate=pdf
}
pdf_generator.60.select.where = colPos=
Stehen, aber wie gesagt, ich bekomme keine Ausgabe. Nur "Reason: File "shop.pdf" was not found (2)!" - wenn jemand weiß, wie ich mein PDF generieren kann, wäre ich sehr dankbar....
Gruß
Nicole
hi nicole,
hmmmm trösten tuts mich net wirklich 😢 und der kunde tritt mir trotzdem in a #giggle#
ich hab cool uri deinstalliert und die konfiguration soweit belassen.
also mit meiner jetztigen konfiguration und simulateStaticPdf funktioniert es.
Nur brauch ich jetzt ne andere lösung für saubere urls.
gruß tri
Moin!
Mein Problem ist noch immer nicht geklärt.
Ich habe nun noch einmal einen Schritt zurück gemacht und mein RealURL deaktiviert.
Nun läuft noch pdf_generator2, pdf_generator2_fonts und tv_pdfgen.
Die Meldung, die nun beim PDF (z.B. 66.pdf bei der Seite mit der ID 66) kommt:
Error while trying the pdfconversion
Maybe the gen_pdf.php script was not executed at all.
Wie ich das beheben kann weiß ich leider nicht. Habe die Extentions nochmal gepdatet, den Update-Knopf gedrückt und de- und installiert...
Bitte um Hilfe! 🙂
Gruß
Nicole
Hi nicole,
sourcepot macht auch stress, falls du den noch drauf hast.
gruß tri
Hi tri!
Ich weiß nichtmal was das ist... #paralyzed#
Aber im Extentionmanager ist nichts dergleichen zu finden....
Gruß
Nicole