Thread suchen und vergleichen (124 answers)
Opened by Kathrin at 2004-12-16 16:21

Kathrin
 2004-12-16 16:21
#32653 #32653
User since
2004-12-15
158 Artikel
BenutzerIn
[default_avatar]
hmmm hier mal ein kniffligeres Problem. Auf perl.de konnte man mir leider nicht helfen, deswegen poste ich es mal hier...
Und zwar soll nach unterschiedlichen docnamen bei gleicher identnr gesucht und in doc_vorhanden() übergeben werden, wenn es verschiedene gibt. Wenn es nur eine Art docnamen gibt, dann soll es ganz normal weiterlaufen.
Der gleiche docname kann 1-3 mal unter gleicher identnr gespeichert werden. Also man kann nicht einfach abzählen lassen.
Man muss wirklich die docnamen irgendwie vergleichen...
Hat jemand einen Vorschlag???
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
sub suchen { 
my $db="DBI:mysql:produkte";
my $user="";
my $pass="";
my $dbh = DBI->connect($db,$user,$pass) or die $DBI::errstr;
my $statement_suchen="SELECT * FROM tbl0011990 where ident_nr = '$identnr'";
my $sth_suchen=$dbh->prepare($statement_suchen) or die $DBI::errstr;
$sth_suchen->execute;
my %hash;
while (my @row = $sth_suchen->fetchrow_array()) {
$hash{identnr} = $row[0];
$hash{doctyp} = $row[2];
$hash{docname} = $row[3];
$hash{head_de} = $row[4] if ($row[1] eq 'DE');
$hash{head_en} = $row[4] if ($row[1] eq 'EN');
$hash{head_fr} = $row[4] if ($row[1] eq 'FR');
$hash{deutsch} = $row[5] if ($row[1] eq 'DE');
$hash{englisch} = $row[5] if ($row[1] eq 'EN');
$hash{franz} = $row[5] if ($row[1] eq 'FR');
$hash{ersteller}= $row[7];
$hash{werk} = $row[8];
$hash{check1} = $row[9];
$hash{check2} = $row[10];
$hash{check3} = $row[11];
$hash{check4} = $row[12];
}
such_eintr(\%hash);

$sth_suchen->finish();
$dbh->disconnect();
}


Beispiele für docnamen: 12345_1, 12345_1, 12345_2, 123456, 1003/99, 1234567_1, 1234567_1...
hier sollen dann folgende in der doc_vorhanden() tabelle mit der jeweiligen doctyp und headline aufgelistet werden: 12345_1, 12345_2, 123456, 1003/99, 1234567_1

View full thread suchen und vergleichen