Schrift
[thread]850[/thread]

CGI+HTML+DB durchsuchen+TXT generieren (Seite 9)



<< |< 1 ... 6 7 8 9 >| >> 85 Einträge, 9 Seiten
lolipop 999
 2006-12-18 17:37
#9217 #9217
User since
2006-04-07
150 Artikel
BenutzerIn
[default_avatar]
also im suche.pl habe ich es aufgerufen
der rechnungsbetrag ist ja verlinked
dann erscheint der download von der txt datei

der link ist

http://localhost/cgi-bin/rechnung.cgi?id=02

was heißt was steht im <a>-Tag drin

Danke für die Hilfe

lolipop 999
lolipop 999
 2006-12-18 18:17
#9218 #9218
User since
2006-04-07
150 Artikel
BenutzerIn
[default_avatar]
ich habe dn SQL von der rechnung.cgi geändert

so

my $stmt = "SELECT Tabelle1.Name, Tabelle1.Adresse, Tabelle2.Rechnungsbetrag FROM Tabelle1,Tabell2 WHERE Kundennummer = ?";

aber wieder gleiches ergebnis

danke für die hilfe
renee
 2006-12-18 20:42
#9219 #9219
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Gibt es denn in der Datenbank einen Eintrag zu der Rechnungsnummer 02? Oder heißt es vielleicht nur 2 (ohne die 0)?
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
lolipop 999
 2006-12-19 12:12
#9220 #9220
User since
2006-04-07
150 Artikel
BenutzerIn
[default_avatar]
nein die kundennummer ist in beiden Tabellen 01, 02, 03
lolipop 999
 2006-12-21 13:56
#9221 #9221
User since
2006-04-07
150 Artikel
BenutzerIn
[default_avatar]
Hier nochmals beide codes:

suche.pl

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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
#!f:/Perl/bin/perl -w

use strict;
use warnings;

use CGI;
use CGI::Carp qw(fatalsToBrowser);
use DBI;

my $dbh = DBI->connect('DBI:ODBC:driver=Microsoft Access-Treiber (*.mdb); dbq=Kunden.mdb') or die $DBI::errstr;
my $cgi = CGI->new();

print $cgi->header();
my %params = $cgi->Vars();

### Suche oder Eintrag ###

if ($params{suchanfrage}){
suche($cgi, $dbh, %params);
}
elsif($params{eintrag}){
eintragen($cgi, $dbh, %params);
}
else{
print 'Keine Aktion ausgew&auml;hlt';
}

$dbh->disconnect();

### Start Subroutine Suche ###

sub suche{
my ($cgi,$dbh,%params) = @_;

my $stmt = qq~SELECT Tabelle1.Kundennummer, Tabelle1.Adresse, Tabelle1.Name,
Tabelle1.Telefonnummer, Tabelle2.Rechnungsbetrag
FROM Tabelle1, Tabelle2
WHERE Tabelle1.Kundennummer = Tabelle2.Kundennummer~;

my $sth = $dbh->prepare($stmt) or die $dbh->errstr();
$sth->execute() or die $dbh->errstr();

### Treffer ###
if ($sth->rows != 0){
print <<HERE_TEXT1;
<HTML>
<HEAD>
<TITLE> Antwort </TITLE>
</HEAD>

<BODY>
<CENTER>
<H1>Suchergebnis:</H1>
<HR>
<TABLE BORDER>
<TR>
<td width="200"><b>Kundennummer:</b></td>
<td width="200"><b>Adresse:</b></td>
<td width="200"><b>Name:</b></td>
<td width="200"><b>Telefonnummer:</b></td>
<td width="200"><b>Rechnungsbetrag:</b></td>
</TR>

HERE_TEXT1


while (my @data = $sth->fetchrow_array()) {
print sprintf(qq~<TR>\n<TD><B>%s</B></TD>
<TD>%s</TD>
<TD>%s</TD>
<TD><B>%s</B></TD>
<TD><a href="rechnung.cgi?id=%s" target="_blank">%s</a></TD>\n</TR>~,@data[0..3,0,4]);
}

print qq§</TABLE>\n<P><A HREF =\"../formular1.html\">Neue Suche!</A></P>\n<HR>\n
</CENTER>\n</BODY>\n</HTML>§;

}
else {
print <<HERE_TEXT2;
<HTML>
<HEAD>
<TITLE>Antwort</TITLE>
</HEAD>
<BODY>
<P>Leider brachte die Suche nach '$params{name}' keine Ergebnisse!</P>
<HR>
<P><A HREF =\"../formular1.html\">Neue Suche!</A></P>
</BODY>
</HTML>

HERE_TEXT2
}
$sth->finish();
}


sub eintragen{
my ($cgi,$dbh,%params) = @_;
$dbh->do("INSERT INTO Kunden VALUES (?,?,?,?,?)",undef,
@params{qw/kundennummer adresse name telefonnummer rechnungsbetrag/}) or die $dbh->errstr();


my ($kundennummer,$adresse,$name,$telefonnummer,$rechnungsbetrag) =
@params{qw/kundennummer adresse name telefonnummer rechnungsbetrag/};

print <<HERE_TEXT3;
<HTML>
<HEAD>
<TITLE> Antwort </TITLE>
</HEAD>
<BODY>
<H4>Datenbankeintrag:</H4>
<HR>
<P><B>$kundennummer</B>, $adresse, $name, $telefonnummer, $rechnungsbetrag</P>
<HR>
<P><A HREF =\"../formular2.html\">Neuer Eintrag!</A></P>
<HR>
</BODY>
</HEAD>

HERE_TEXT3

}


rechnung.cgi

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
#!f:/Perl/bin/perl 

use strict;
use warnings;
use CGI;
use DBI;

my $cgi = CGI->new();
my %params = $cgi->Vars();

my $dbh = DBI->connect('DBI:ODBC:driver=Microsoft Access-Treiber (*.mdb); dbq=Kunden.mdb') or die $DBI::errstr;
my $stmt = "SELECT Tabelle1.Name, Tabelle1.Adresse, Tabelle2.Rechnungsbetrag FROM Tabelle1,Tabell2 WHERE Kundennummer = ?";
my $sth = $dbh->prepare($stmt) or die $dbh->errstr();
$sth->execute($params{id});

my %hash;
@hash{qw/Name Adresse Rechnungsbetrag/} = $sth->fetchrow_array();

print qq~Content-type: text/plain
Content-Disposition: attachment; filename=$params{id}.txt

~;
print sprintf("%-20s %s\n",$_,$hash{$_}) for(keys %hash);


Danke für die Hilfe
<< |< 1 ... 6 7 8 9 >| >> 85 Einträge, 9 Seiten



View all threads created 2006-12-03 10:38.