Schrift
[thread]361[/thread]

Access-Datenbank: Anfänger verzweifelt (Seite 2)



<< |< 1 2 >| >> 18 Einträge, 2 Seiten
satanica1976
 2004-08-19 14:00
#3475 #3475
User since
2004-08-16
17 Artikel
BenutzerIn
[default_avatar]
Quote
Außerdem soll eine Textdatei als Rechnung generiert werden, auf der die Adresse, der Name und die Rechnungsnummer des jeweiligen Kunden angeführt sein soll.


und womit passiert das?? also welcher teil ist dann dafür verantwortlich??
Mein Name ist Hase.......
ptk
 2004-08-19 14:17
#3476 #3476
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
[quote=satanica1976,19.08.2004, 12:00]
Quote
Außerdem soll eine Textdatei als Rechnung generiert werden, auf der die Adresse, der Name und die Rechnungsnummer des jeweiligen Kunden angeführt sein soll.


und womit passiert das?? also welcher teil ist dann dafür verantwortlich??[/quote]
Prinzipiell koenntest du den Code, der den HTML-Text erzeugt, wiederverwenden, natuerlich ohne HTML-Tags. Und dieser Text muesste in eine Datei geschrieben werden.
satanica1976
 2004-08-19 14:21
#3477 #3477
User since
2004-08-16
17 Artikel
BenutzerIn
[default_avatar]
:0
Mein Name ist Hase.......
Crian
 2004-08-19 14:42
#3478 #3478
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Normalerweise läuft es bei CGI so: Man hat auf der Webseite ein Formular, dort kann der User in diesem Fall etwa eine Kundennummer eingeben, dann wird diese an das CGI-Skript übergeben, wenn der User den entsprechenden Button zum Abschicken drückt.

Das CGI-Skript erzeugt jetzt eine Ausgabe (auf STDOUT, d.h. mit print), welche an den Browser zurückgegeben wird, dort findet er dann etwa die ganzen Informationen aus der Datenbank zu der Kundennummer, die er angefordert hat.

Zusätzlich kann das Skript aber auch noch eine Datei erstellen (mit open ... print ... close), oder man kann alternativ kein HTML-Dokument zurückgeben, sondern ein Textdokument (das braucht dann aber einen anderen Header, wenn ich nicht falsch liege).

Dem Aufgabentext nach zu schließen, sollst Du aber eine Tabelle in HTML-Form zurückliefern (die fehlt noch in Deinem Programm, bisher gibst Du die Daten ja nur in Paragraphen (<p>...</p>) aus, nicht in einer Tabelle, aber das können wir noch machen, wenn alles andere läuft) und zusätzlich ein Rechnungsdokument erzeugen. Dieses wird dann einfach im Dateisystem des Servers gespeichert und enthält dann wahrscheinlich informationen darüber, wer das Formular abgeschickt hat (dies muss also mit an das CGI-Skript geliefert werden) und welche Informationen er wollte (um diese dann abrechnen zu können).

Aber vielleicht stelle ich mir das wieder alles zu kompliziert vor?
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
satanica1976
 2004-08-19 14:51
#3479 #3479
User since
2004-08-16
17 Artikel
BenutzerIn
[default_avatar]
also das mit der tabelle habe ich auch so aufgefaßt und ich denke mal das sich dann einfach ein txt-dokument (open) noch öffnen soll wo dann das bereits reingeschrieben worden ist, also die rechnungsnummer, name und andresse des kunden.
Mein Name ist Hase.......
Crian
 2004-08-19 15:45
#3480 #3480
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Genau. Wie so eine HTML-Tabelle aussieht weißt Du ja wahrscheinlich besser als ich ;-)

Ansonsten -> http://de.selfhtml.org/ bzw. http://de.selfhtml.org/html/tabellen/index.htm
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Strat
 2004-08-19 22:19
#3481 #3481
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
1. 5. #d:/perl/bin/perl ist kein gueltiger Shebang, und deshalb wird -w auch nicht aktiviert und bringt dir keine Warnungen

2. wenn du eine Perl-Version >= 5.6 verwendest, dann schreibe besser
Code: (dl )
1
2
3
#! d:/perl/bin/perl
use warnings;
use strict;


3. § ist eine schlechte Wahl fuer ein Begrenzungszeichen, weil das stark zeichensatzabhaengig ist
4. Bei Kommunikation mit externen Systemen kann immer was schiefgehen. Wenn du da keine Fehlerabfrage machst, bekommst du es meistens an der falschen Stelle mit, und suchst dann ewig den Fehler...

5. \\ ist kein gueltiges Perl-Kommando... offenbar meinst du || (aber hier besser or verwenden)

Teste mal
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#! d:/perl/bin/perl
use warnings
use strict;

use CGI qw(standard);
use CGI::Carp qw(warningsToBrowser fatalsToBrowser);

use DBI;

my $cgi = CGI->new();
my $kundenNummer = $cgi->param('kundennummer');

print $cgi->header();
print $cgi->start_html('Antwort');
print $cgi->h3("Treffer:");
print $cgi->hr();

my $dbh = DBI->connect('DBI:ODBC:db1');
unless ($dbh) {
   die "Error: couldn't connect to DB: $DBI::errstr\n";
} # unless

my $sqlstatement=qq~SELECT * FROM table1 INNER JOIN table2 ON table1.kundennummer = table2.kundennummer WHERE kundennummer=?~;
my $sth = $dbh->prepare($sqlstatement) or
 die "Error in prepare: $dbh->errstr\n";

$sth->execute($kundenNummer) or
 die "Could not execute SQL statement ... maybe invalid? $DBI::errstr\n";

while (my @row=$sth->fetchow_arrayref){
   print "<P>@row</P>\n";
} # while

$sth->finish();

print $cgi->end_html();

$dbh->disconnect();
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
ptk
 2004-08-20 14:43
#3482 #3482
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Ich habe kuerzlich CPAN:DBIx::XHTML_Table gefunden. Da kann man den SQL+HTML-Part einfach auf:
Code: (dl )
1
2
3
4
5
use DBIx::XHTML_Table;
print DBIx::XHTML_Table
->new('DBI:ODBC:db1')
->exec_query('SELECT * FROM table1 INNER JOIN table2 ON table1.kundennummer = table2.kundennummer WHERE kundennummer=?', [$kundennummer])
->output;

abkuerzen :-)
<< |< 1 2 >| >> 18 Einträge, 2 Seiten



View all threads created 2004-08-16 17:47.