Druckbefehl in PHP schreiben
Hallo Leude, folgende Frage:
Ich habe einen Server bei mir im Netzwerk, der verschiedene Produktdaten hält. Das Ganze ist in 2 Frames aufgebaut. Links der Produktbaum und rechts das Produktdatenblatt.
Ich möchte jetzt versuchen, dass Produktdatenbatt zu drucken und zwar sowohl als PDF als auch als Hardcopy. Dummerweise tritt in beiden Fällen das Problem auf, dass nicht der gesamte Inhalt gedruckt wird, sondern nur bis zur Häflte bzw. dreiviertel.der Seite.
Ich habe schon mehrere PDF-Printer ausprobiert, bei allen dasselbe Ergebniss. Auch wenn ich in Firefox die Option "nur den aktuellen Frame anzeigen" nutze, wird nur ein Teil der Seit gedruckt. Hat da jemand einen Tip, wie man das Problem löst?
Ich könnte alternativ in diesem Datenballt noch einen Reiter einfügen und ein PHP Script hinterlegen und damit eine Druckbefehl ausgeben allerdings weiss ich nicht, wie dafür der PHP-Befehl lauten würde...
Hat jemand eine Idee?
Danek schonmal.
Greetz
Der Wes
Ich habe einen Server bei mir im Netzwerk, der verschiedene Produktdaten hält. Das Ganze ist in 2 Frames aufgebaut. Links der Produktbaum und rechts das Produktdatenblatt.
Ich möchte jetzt versuchen, dass Produktdatenbatt zu drucken und zwar sowohl als PDF als auch als Hardcopy. Dummerweise tritt in beiden Fällen das Problem auf, dass nicht der gesamte Inhalt gedruckt wird, sondern nur bis zur Häflte bzw. dreiviertel.der Seite.
Ich habe schon mehrere PDF-Printer ausprobiert, bei allen dasselbe Ergebniss. Auch wenn ich in Firefox die Option "nur den aktuellen Frame anzeigen" nutze, wird nur ein Teil der Seit gedruckt. Hat da jemand einen Tip, wie man das Problem löst?
Ich könnte alternativ in diesem Datenballt noch einen Reiter einfügen und ein PHP Script hinterlegen und damit eine Druckbefehl ausgeben allerdings weiss ich nicht, wie dafür der PHP-Befehl lauten würde...
Hat jemand eine Idee?
Danek schonmal.
Greetz
Der Wes
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 263203
Url: https://administrator.de/forum/druckbefehl-in-php-schreiben-263203.html
Ausgedruckt am: 21.04.2025 um 15:04 Uhr
16 Kommentare
Neuester Kommentar
Hallo!
Um mit PHP eine PDF-Seite zu erstellen gibt es http://fpdf.de/.
Ich würde den HTML-Inhalt des Frames mittels Ajax an ein PHP-File übergeben und damit eine PDF-Seite generieren, die kann man dann ansehen, speichern oder drucken.
Gruß
Eisbein
Um mit PHP eine PDF-Seite zu erstellen gibt es http://fpdf.de/.
Ich würde den HTML-Inhalt des Frames mittels Ajax an ein PHP-File übergeben und damit eine PDF-Seite generieren, die kann man dann ansehen, speichern oder drucken.
Gruß
Eisbein
Eventuell ist diese Seite hilfreich: http://www.soziologie.uni-halle.de/unger/scripts/workshop_internet/fr_j ...
Hallo!
Für PHP brauchst du keine Entwicklungsumgebung. PHP-Datei im Text-Edito öffnen, berabeiten, wieder als PHP-Datei (Endung .php!!!) speichern und gut ist es.
Dafür habe ich doch einen Link gepostet, der genau das macht?!
Das verhält sich genau wie bei PHP - einfach Datei öffnen und den Code schreiben und speichern.
HTML, JavaScript und PHP-Kenntnisse sind sicherlich sehr hilfreich!
PHP wird am Server verarbeitet und das Resultat zum Client gesendet, JavaScript wird (normalerweise) im Browser des Clients verarbeitet, sofern JavaScript aktiviert ist.
Wo genau ist nun das Problem?
Zugriff auf den Server und die Dateien ist vorhanden?
Gruß
Eisbein
Ich habe einen Server auf dem eine Anwendung läuft, die PHP-basiert ist. Ich habe aber zu der Anwendung keine Enwicklungsumgebung
Für PHP brauchst du keine Entwicklungsumgebung. PHP-Datei im Text-Edito öffnen, berabeiten, wieder als PHP-Datei (Endung .php!!!) speichern und gut ist es.
Das Problem dabei ist, ich kann mir zwar den Frame, den ich ausdrucken will, allein anzeigen und ausdrucken lassen, aber sobald der Seiteninhalt über mehr als eine Seite geht, wird der Rest nicht mehr ausgedruckt und abgeschnitten. Wenn ich die Seitengrösse runterskaliere ist alles nicht mehr lesbar.
Dafür habe ich doch einen Link gepostet, der genau das macht?!
Gegen Javascript spricht prinzipiell gar nichts, aber ich kann es ohne Entwicklungsumgebung nicht einbauen
Das verhält sich genau wie bei PHP - einfach Datei öffnen und den Code schreiben und speichern.
HTML, JavaScript und PHP-Kenntnisse sind sicherlich sehr hilfreich!
PHP wird am Server verarbeitet und das Resultat zum Client gesendet, JavaScript wird (normalerweise) im Browser des Clients verarbeitet, sofern JavaScript aktiviert ist.
Wo genau ist nun das Problem?
Zugriff auf den Server und die Dateien ist vorhanden?
Gruß
Eisbein
Hallo!
Hast du nun Zugriff auf die PHP-Datei oder nicht?
Denk nicht so kompliziert. In die entsprechende PHP-Datei, die den Button/Link (was auch immer) zur Darstellung des Frameinhaltes als neue Seite beinhaltet, wird das JavaScript eingefügt.
Wenn dann auf den Button/Link etc. geklickt wird, wird eine neue Seite im Browser mit dem Frameinhalt angezeigt, diese wird dann wie gewohnt mittes Browser-Druck-Befehl gedruckt oder als PDF gespeichert.
Deine Aufgabe besteht jetzt nur darin, die betreffende PHP-Datei auf dem Server ausfindig zu machen, diese mit einem Texteditor zu öffnen, das Javascript einzufügen und danach wieder als PHP-Datei auf dem Server zu speichern.
Und nicht vergessen, die Original PHP-Datei vorher zu sichern!!
Das Script lautet sinngemäß (entnommen aus dem bereits angeführten Link!):
<script language="JavaScript" type="text/javascript">
<!--
function printMainFrame() {
Main_Frame ist der Name des Quelltext-Frames
parent.frames.Main_Frame.focus();
Diese Zeile ist fuer den Internet Explorer, da er
normalerweise trotz richtiger Angabe nur das fokusierte
Frame-Fenster druckt.
parent.frames.Main_Frame.print();
}
function writePrint() {
document.write("<p><a href=\"javascript:printMainFrame()\">Drücken Sie hier, um den Quelltext auszudrucken!<\/a><\/p>");
}
// -->
</script>
Angepasst muss es natürlich noch werden.
Gruß
Eisbein
Zugriff auf den Server ist theoretisch vorhanden
Hast du nun Zugriff auf die PHP-Datei oder nicht?
Denk nicht so kompliziert. In die entsprechende PHP-Datei, die den Button/Link (was auch immer) zur Darstellung des Frameinhaltes als neue Seite beinhaltet, wird das JavaScript eingefügt.
Wenn dann auf den Button/Link etc. geklickt wird, wird eine neue Seite im Browser mit dem Frameinhalt angezeigt, diese wird dann wie gewohnt mittes Browser-Druck-Befehl gedruckt oder als PDF gespeichert.
Deine Aufgabe besteht jetzt nur darin, die betreffende PHP-Datei auf dem Server ausfindig zu machen, diese mit einem Texteditor zu öffnen, das Javascript einzufügen und danach wieder als PHP-Datei auf dem Server zu speichern.
Und nicht vergessen, die Original PHP-Datei vorher zu sichern!!
Das Script lautet sinngemäß (entnommen aus dem bereits angeführten Link!):
<script language="JavaScript" type="text/javascript">
<!--
function printMainFrame() {
Main_Frame ist der Name des Quelltext-Frames
parent.frames.Main_Frame.focus();
Diese Zeile ist fuer den Internet Explorer, da er
normalerweise trotz richtiger Angabe nur das fokusierte
Frame-Fenster druckt.
parent.frames.Main_Frame.print();
}
function writePrint() {
document.write("<p><a href=\"javascript:printMainFrame()\">Drücken Sie hier, um den Quelltext auszudrucken!<\/a><\/p>");
}
// -->
</script>
Angepasst muss es natürlich noch werden.
Gruß
Eisbein
Im Moment habe ich noch keinen Zugriff auf dei PHP-datei, dafür muss uns ein externer Dienstleister, der die Grundinstallation geliefert hat, erst noch die SDK zur Verfügung stellen.
Irgendwie reden wir aneinander vorbei denke ich.
Du schreibst:
Ich habe einen Server bei mir im Netzwerk, der verschiedene Produktdaten hält.
Du wirst doch auf deinen Server zugreifen können und die dort befindlichen Dateien bearbeiten können?!
Es handelt sich also um eine Fremdsoftware!
Schau dir die Dateistruktur genau an, bevor du etwas vom Drittanbieter kaufst. Wenn dort PHP-Dateien vorhanden sind, kannst du sie auch ändern (Lizenzen und Copyright beachten!).
Du kannst mir auch eine PN senden, wenn du hier nichts öffentlich posten willst.
Gruß
Eisbein