[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • druckversion wie im redaxo-wiki
Seite 1 von 2

druckversion wie im redaxo-wiki

Verfasst: 14. Sep 2004, 19:03
von aart
hi,

an die macher vom wiki:
wie binde ich die funktion "print" wie im wiki in redaxo mit ein (mit ?action=print etc.).
genauer: das eben nur der content-bereich in einer neuen seite angezeigt wird, ohne die navi.
ich hatte die frage schonmal gestellt, habs aber noch nich im griff...

mit der erklaerung aus'm wiki komm ich nich klar - erzeugt immer n fehler?!

Code: Alles auswählen

'opener.document' ist Null oder kein Objekt
beim direkten aufruf des artikels mit der artieklnummer, dass das "druckversionsfenster" ist, erscheint folgende meldung:

Code: Alles auswählen

Parse error: parse error, unexpected '<' in /redaxo/include/classes/class.article.inc.php(375) : eval()'d code on line 67
gruss
aart

Verfasst: 15. Sep 2004, 18:43
von vscope
das geht ganz einfach.

mach ein modul "print seite" mit der folgenden ausgabe:

Code: Alles auswählen

<!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>
<title>Druckseite</title>
</head>

<body onLoad="self.print()">
<table width=450 cellpadding=0>
<tr>
<td>
<?

if ("REX_ARTICLE_ID"!=$FORM[aid])
{

$CONTENT = new article;
$CONTENT->setArticleID($FORM[aid]);
$CONTENT->getArticle();

}

?>
</td>
</tr>
</table>
<br>
</body>
</html>

mach einen artikel "print ausgabe" und bei template sag kein template.
da hängst du das modul "print seite" als slice rein.
fertisch.

dann kannst du die printseite so aufrufen.
(article id = article id des artikel printaugabe)

index.php?article_id=print_seite_article_id&FORM[aid]=auzudruckender_Artikel_id

das wars schon




[/quote]

Verfasst: 17. Sep 2004, 14:29
von aart
mhhhh,

beim einfuegen des druck-moduls im artikel (also im redaxo-backend!) geht das druckfenster auf, er druckt auch diese seite.

beim einbinden des allgemeines links 'drucken' in das template der seite (damit ueberall erscheint), kommt leider nur ne leere seite, bzw. nur die browserzeilen (uhrzeit, url, etc.) wird gedruckt.

Code: Alles auswählen

index.php?article_id=print_seite_article_id&FORM[aid]=auzudruckender_Artikel_id 
wenn mein erstellter artikel, der das modul 'drucken' beinhaltet 99 ist, lautet mein aufruf aus dem template:

Code: Alles auswählen

<a href="index.php?article_id=99&FORM[aid]">drucken</a>
@vscope: help!

gruss
aart

Verfasst: 17. Sep 2004, 16:19
von vscope
;)

der druckartikel muss aber auch wissen welcher artikel gedruckt werden soll oder ? ;)
darum hast du den value FORM[aid]

darum

Code: Alles auswählen

<a href="index.php?article_id=99&FORM[aid]=12">drucken</a>
da wird dann z.B artikel 12 in der print preview angezeigt!

also im im modul schreibts

Code: Alles auswählen

print '<a href="index.php?article_id=99&FORM[aid]='.$this->article_id.'">drucken</a>';

roger?

vscope

Verfasst: 18. Sep 2004, 11:54
von aart
ok, hab's geschnallt

DANKE @ vscope

gruss
aart

Verfasst: 11. Feb 2005, 16:36
von Peter.Bickel
Hallo Aart und Vscope,

ich hab die Anleitung genau nachvollzogen, habe jedoch Probleme.

Ich hab einen Druckartikel erstellt ohne Template; er hat bei mir die ID 40.

Dann hab ich im Standardtemplate den Link eingefügt:
<? print '<a href="index.php?article_id=40&FORM[aid]='.$this->article_id.'">drucken</a>'; ?>

Zuletzt hab ich ein Modul erstellt mit dem oben von vscope genannten Ausgabe-Code und dieses Modul dem Druckartikel hinzugefügt.

Wenn ich nun auf "drucken" auf einer normalen Seite klicke, öffnet sich nur eine leere Seite mit dem Druckdiaolg. HTML-Header und so weiter wird korrekt eingefügt, aber nicht der Seiteninhalt.

Hat jemand ne Idee?

Schöne Grüße,
Peter.

Seite drucken

Verfasst: 25. Mär 2005, 14:02
von stuttgarter
Hallo

Was spricht gegen diese Version / die ich im Template einfach einfüge..

<p><a class='link' href="#" onClick="window.print();return false;">Seite drucken</a></p>

( sie funtzt glaub nur in neuerern Explorern.. )

Grüsse Stuttgarter

Re: Seite drucken

Verfasst: 25. Mär 2005, 14:06
von Markus.Staab
stuttgarter hat geschrieben:Hallo

Was spricht gegen diese Version / die ich im Template einfach einfüge..

<p><a class='link' href="#" onClick="window.print();return false;">Seite drucken</a></p>

( sie funtzt glaub nur in neuerern Explorern.. )

Grüsse Stuttgarter
Es spricht dagegen, dass das ganze Menu/Layout etc. mitgedruckt wird.
Bei der o.g. Version wird nur der Inhalt des Artikels gedruckt...

Gruß,
Markus

Seite drucken ...

Verfasst: 25. Mär 2005, 14:11
von stuttgarter
Aha...
weisst bin mit dem oben nicht klar gekommen...

wie ich es ginau einbaue..

na klar stört mich das es alles mitdruckt...

aber besser als garkeine funktion.... zum ausdrucken...

ausser ein lieber redaxo fan würde es mir evtl kurz einrichten ?

:?: :roll: :idea: :roll:

Grüssle stuttgarter

Verfasst: 25. Mär 2005, 17:56
von Markus.Staab
man kann es sich auch sehr einfach machen....

vielleicht sollte man selbst ma ein bissl php + html in ein paar tutorials versuchen...

Mann wächst mit den Aufgaben....

Nicht so schnell aufgeben!!!

Drucken Funktion...

Verfasst: 28. Mär 2005, 15:03
von stuttgarter
Hi habe die Funktion nun eingebaut...

es funktioniert super.. aber frage:

<? print '<a href="index.php?article_id=23&FORM[aid]='.$this->article_id.'">Seite ausdrucken</a>'; ?>

wie kann ich den link auf ein gif einfügen ?

und das die zu druckende Seite in einem neuen Fenster öffnet ?

Grüse Stuttgarter

Re: Drucken Funktion...

Verfasst: 28. Mär 2005, 15:39
von Markus.Staab
stuttgarter hat geschrieben:
wie kann ich den link auf ein gif einfügen ?
Was ist ein link auf ein gif?
Wenn ein bild in dem artikel drinne ist, dann wird dieses ganz normal mitgedruckt....

stuttgarter hat geschrieben:
<? print '<a href="index.php?article_id=23&FORM[aid]='.$this->article_id.'">Seite ausdrucken</a>'; ?>

und das die zu druckende Seite in einem neuen Fenster öffnet ?
Hm keinen blassen schimmer von HTML?
Das ist doch mehr als nur BASICs....

Code: Alles auswählen

<? print '<a href="index.php?article_id=23&FORM[aid]='.$this->article_id.'" target="_blank">Seite ausdrucken</a>'; ?> 
Gruß,
Markus

Seite ausdrucken

Verfasst: 28. Mär 2005, 17:33
von stuttgarter
Hi

Thx... erstmals ...

wie kann ich den link auf ein gif einfügen ?

Ich habe ein icon... als gif in meinem template...

welchen link muss ich dem icon geben ?

<? print '<a href="index.php?article_id=23&FORM[aid]='.$this->article_id.'" target="_blank">Seite ausdrucken</a>'; ?>


das als link funktioniert ja nicht .... ?..

Grüssle stuttgarter ...

Verfasst: 28. Mär 2005, 18:02
von Markus.Staab
?!?!!?

Code: Alles auswählen

<? print '<a href="index.php?article_id=23&FORM[aid]='.$this->article_id.'" target="_blank"><img src="'. $REX[HTDOCS_PATH]  .'files/mein.gif"/>Seite ausdrucken</a>'; ?>

Seite ausdrucken...

Verfasst: 29. Mär 2005, 10:44
von stuttgarter
Hi

Danke für deine hilfe ...

ich meinte...

in dem tempalte habe ich gifs integriert ...
nicht als css...!

aber passt schon ... trotzdem vielen dank für deine Mühe ...

Verfasst: 16. Jan 2006, 22:07
von svenalbert
durch das eine target im druck link (und hier finde ich es wirklich nicht sinnvoll, kein neues fenster zu öffnen) "ruiniere" ich mir ja mein XHTML 1.0 strict, das mein projekt bisher noch einhält.

gibt es eine standard-konforme variante?
ich habe eine bisher methode mit nem javascript gefunden, die ein <a href="" rel="external">TEXT</a> in ein neues fenster zwingt.

Sven

Verfasst: 16. Jan 2006, 22:24
von Thomas.Blum
hej,

mache es doch einfach via popup. schau dir mal die popup-module und das template an. anstatt $images einfach die article_id übergeben. damit sollte es funktionieren, hoffe ich :-)

vg thomas

Verfasst: 18. Jan 2006, 00:56
von svenalbert
vscope hat geschrieben:mach einen artikel "print ausgabe" und bei template sag kein template.
da hängst du das modul "print seite" als slice rein.
fertisch.
Ähm, das funktioniert nicht ganz.

Wenn ich KEIN TEMPLATE vereinbare, dann wird doch auch nichts ausgegeben oder???

Ich müßte doch also zumindest:

Code: Alles auswählen

<?php echo $this->getArticle(); ?>
als Template haben.

steh ich jetzt auf dem schlauch oder seh ich was nicht.

danke

Sven


P.S. ich habe gemerkt, daß es probleme gibt, die 'richtige' artikel-id am ende der seite zu haben, wenn man das modul "alias" (LINK) benutzt.
ich habe es bei mir jetzt so abgeändert. Eingabe bleibt gleich:

Ausgabe:

Code: Alles auswählen

<? 

$MERKEarticle_id = $this->article_id;

$myPath = explode("/", $_SERVER['SCRIPT_NAME']);
if ($myPath[count($myPath)-2]=="redaxo"){
	$alias = explode("-", "REX_LINK[1]");
	$this->article_id = $alias[0];
	echo $this->getArticle();

}else{
	$tmp = explode("=", "REX_LINK[1]");
	$this->article_id = $tmp[1];
	echo $this->getArticle();
}

$this->article_id = $MERKEarticle_id;

?>

Verfasst: 18. Jan 2006, 16:21
von Markus.Staab
Hi
svenalbert hat geschrieben:Wenn ich KEIN TEMPLATE vereinbare, dann wird doch auch nichts ausgegeben oder???
Das Template ist der Container (das Layout) der um die Inhalte herum ist.

Wenn also kein Template definiert ist, werden nur die Inhalte ausgegeben.

Gruß,
Markus

Artikel-Name korrekt ausgeben?

Verfasst: 14. Jul 2006, 15:51
von barbe
Hallo, wie kann ich den Artikelname mit ausgeben in der Druckversion?

önnte das in dieser Form funktionieren?

print '<h1>';
$articleName->setArticleID($FORM[aid]);
print getValue("name");
print '</h1>';

Verfasst: 14. Jul 2006, 15:58
von Markus.Staab
Hi,

nein sicher nicht... ;)

Code: Alles auswählen

$ooart = OOArticle::getArticleById($FORM[aid]);
echo $ooart->getName();
Gruß,
Markus

leere seite

Verfasst: 24. Jul 2006, 11:26
von joachim
bei mir heisst die artikelseite 23
somit ist der code:

Code: Alles auswählen

<a href="index.php?article_id=23&FORM[aid]='.$this->article_id.'">Seite drucken</a> 
es öffnet sich jedoch NUR eine leere Seite und das druckerfenster öffnet sich.

Verfasst: 24. Jul 2006, 11:49
von Markus.Staab
Hi Joachim,

wie sieht dein Template aus (des Druckartikels)?

Gruß,
Markus

Verfasst: 24. Jul 2006, 12:35
von joachim
ich habe kein template definiert (wie von dir am anfang des threads beschrieben), aber ich denke ich weiss was der fehler ist:
da hängst du das modul "print seite" als slice rein.
wie hänge ich das modul als "sclice" dran?

Verfasst: 24. Jul 2006, 12:58
von Markus.Staab
Hi,

Naja ganz einfach mit Block hinzufügen..

Gruß,
Markus