Tabelle ausdrucken
Jörn
- php
Hallo Leute. Ich möchte gern aus meiner MySQL Tabelle bestimmte Datensätze drucken. In meiner Tabelle sind z.B. fünf Datensätze, wobei jeder Datensatz zehn Felder hat. In einer Übersichtstabelle werden zuerst einmal alle Datensätze aufgelistet, wobei aber zu jedem Datensatz nur drei Felder (die wichtigsten) erscheinen. Die übrigen Felder zum Datensatz kann man dann über einen link auslesen lassen. (also sprich: eine Tabelle mit den wichtigsten Daten wird angezeigt und hinter jedem Datensatz befindet sich ein link; klickt man den, öffnet sich ein neues Fenster und der gesamte Datensatz wird angezeigt). Ich hoffe, man kann es sich vorstellen.
Nun hat sich jemand alle Datensätze angeschaut und sagen wir mal drei für wichtig gehalten.
Nun die Frage: Kann man die drei Datensätze in der Übersichtstabelle irgendwie markieren (z.B. mit einem Radiobutton vor dem Datensatz) und diese dann anschließend gemeinsam ausdrucken lassen? Also man markiert seine Datensätze und über einen weiteren Button werden diese dann ausgedruckt (dann aber die komplatten Datensätze). Vielleicht kann mir jemand helfen.
Dank im voraus.
Jörn
Hallo Jörn,
sicher geht das, aber leider muß ich erstmal wieder einen Blick in die hier allseits beliebte Glaskugel werfen, die mir leider auch keine Antwort gibt, mit welcher Sprache du den programmierst. PHP? PERL?
Die nächste Frage wäre: Wie hast du das denn mit der Anzeige des Detaildatensatzes in einem neuen Fenster geregelt?
Und: Hast du ein Array, in dem du das Ergebnis der Übersichtsabfrage speicherst?
Liebe Grüße, Uschi
Hi Uschi,
sicher geht das, aber leider muß ich erstmal wieder
einen Blick in die hier allseits beliebte Glaskugel
werfen, die mir leider auch keine Antwort gibt, mit
welcher Sprache du den programmierst. PHP? PERL?
vielleicht hilft die gewählte Kategorie des Threads bei der Beantwortung dieser Frage? ;-)
Viele Grüße
Michael
Hallo Michael, hallo Jörn
da habe ich als sprichwörtlich blindes Huhn wohl ein Ei gelegt *verlegen grinsel* und sorry @Jörn.
liebe Grüße, Uschi
Hallo Jörn,
nachdem das blinde Huhn nun das Korn namens PHP gefunden hat, hier Erwägungen zur Lösung deines Problems, wobei viele Wege nach Rom führen, je nachdem, wie die Voraussetzungen sind und was du eigentlich willst.
Zu klärende Voraussetzungen:
Fragst Du in Deiner Übersichtsdatei bereits alle Felder ab und gibst nur nicht alle aus?
Sind die Ergebnisse in einem global verfügbaren Array gespeichert? Andernfalls müsste man bei der Detailansicht nämlich nochmal auf die Datenbank zugreifen.
Wenn beide Voraussetzungen erfüllt sind, müsstest du ungefähr folgendes haben.
$arMeineDaten = array();
$res = mysql_query("SELECT * FROM tabellenname ORDER BY feldname");
while($row = mysql_fetch_assoc($res)) {
$arMeineDaten[] = $row;
}
Welche PHP-Version hast du, und welche dein Provider. Diese Info ist wichtig für die Variablenweitergabe via PHP.
Du sprichst von einem "neuen Fenster". Soll das heißen, daß dieses Fenster über JavaScript geöffnet wird? Wenn dann nämlich Bedingung 1 und 2 erfüllt sind, könnte man alles weitere mit JS lösen, wenn nicht brauchen wir PHP.
Grundsätzlich gilt:
Deine Tabelle mit der Übersicht muß in einem Formular stehen.
Zu jedem Datensatz lässt du nicht nur deine Kurzübersichtsdaten rausmalen, sondern kreierst über PHP noch eine Checkbox.
Wenn wir mit PHP weiterarbeiten wollen, benamst die alle als chkDetail[]. Durch die eckigen Klammern wird PHP dazu veranlasst, diese Checkboxen beim Submitten der Form automatisch als Array zu betrachten.
Für eine reine JS-Variante, die in DOM1-fähgigen Browsern (also nicht Netscape 4.x) laufen soll, wäre eine Benamsung der Checkboxen ohne die eckigen Klammern günstiger.
Im value-Attribut könntest du ja zum Beispiel die ID des entsprechenden Datensatzes ausgeben.
Sei lieb und beantworte erstmal die Fragen, bevors weitergeht.
Gruß, Uschi
Dann brauchst du noch einen Submit-Button, ich nenne das Kind mal "btnDetail"
da habe ich als sprichwörtlich blindes Huhn wohl ein Ei gelegt *verlegen grinsel* und sorry @Jörn.
liebe Grüße, Uschi