Thread Zeilenumbruch wegmachen (6 answers)
Opened by CGIResource at 2003-11-20 18:36

CGIResource
 2003-11-20 19:15
#9883 #9883
User since
2003-10-14
5 Artikel
BenutzerIn
[Homepage] [default_avatar]
Klar!

Hier lese ich die Daten aus und schreibe sie (testweise) in eine Textdatei:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
my $dbh = DBI->connect("dbi:mysql:$dbank:localhost","$dbuser","$dbpass");
$sth = $dbh->prepare( "SELECT * FROM $tabelledbsystem");
$sth->execute();  


while (@row = $sth->fetchrow_array()) {
$mailid = $row[0];
$mailaddy = $row[7];

chomp($mailaddy);
$mailaddy =~ s!\n$!!;


open (PASS3,">>/kunden/cgiresource/dbsystem/data/repairdb");
print PASS3 "$mailid|$mailaddy\n";
close(PASS3);


}
my $rc = $dbh->disconnect;    #schließen


Und hier hole ich die Daten wieder aus der Textdatei (wo die Daten wirklich ohne Zeilenumbruch sind!) und schreibe sie in eine weitere Tabelle (damit die Originaldaten nicht noch zerschossen werden):

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
open (DATEI,"</kunden/cgiresource/dbsystem/data/repairdb") || die "Fehler in $datei $!";
chomp(@datei = <DATEI>);
close (DATEI);

foreach $zeile (@datei)
{
($id,$mail) = split (/\|/, $zeile);
#$mail =~ s/\n//g;
my $dbh = DBI->connect("dbi:mysql:$dbank:localhost","$dbuser","$dbpass");
$sth = $dbh->prepare( "UPDATE dbsystem2 SET mail=\"$mail\" WHERE id='$id' LIMIT 1");
$sth->execute();  
my $rc = $dbh->disconnect;    #schließen
}


Aber wie gesagt sind dann in der 2. Tabelle die Zeilenumbrüche wieder zu finden...

Gruß,

CGIResource

View full thread Zeilenumbruch wegmachen