Meine DB?
Das ist ein ganz normales File:
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
sub create {
my $return = 1; #positive annahme
my $filename = $query->{neu_titel};
$filename =~ tr/ÄÖÜäöüßA-Za-z\000-\377/aouaousa-za-z/d;
if( $filename eq "" ){ $filename = rand(1); }
$filename =~ s/\&/&/g; #&
$filename =~ s/"/"/g; #"
$filename =~ s/\'/'/g; #'
$filename =~ s/>/>/g; #>
$filename =~ s/</</g; #<
$filename =~ s/\n/<br>/g; #\n
my $datei = $dataDir . '/' . $filename . 'txt.igs';
# ---- seite in DB eintragen, pid hochzählen
my @data = extractFile( $database_file );
my $pid = (split/\t/, $data[scalar(@data)-1])[0];
$pid++;
# -- nr \t keyword \t titel \t meta-keywords \t meta-desc \t meta-page-topic \t datei(Pfad)
my $key = $query->{neu_titel}; #umlaute etc ersetzen!!!
$key =~ s/\&/&/g; #&
$key =~ s/"/"/g; #"
$key =~ s/\'/'/g; #'
$key =~ s/>/>/g; #>
$key =~ s/</</g; #<
$key =~ s/\n/<br>/g; #\n
$key =~ tr/ÄÖÜäöüßA-Za-z\000-\377/aouaousa-za-z/d;
if( $key eq "" ){ $key = rand(1); }
my $neu = $pid . "\t" . $key . "\t" . $query->{neu_titel} . "\t" . $query->{keywords} . "\t" . $query->{desc} . "\t" . $query->{page_topic} . "\t" . $datei . "\n";
foreach( @data ){
if( (split/\t/, $data[scalar(@data)-1])[1] eq "$key" ){
$subs{error} = "<b>Fehler: Eine Seite mit diesem Namen ($key) existiert bereits! Bitte klicken Sie auf den Zurück-Button ihres Browsers und geben Sie einen anderen Namen ein.</b>";
return 0;
}
}
# ---- file anlegen (ok!)
open(DAT, ">$datei") || die "$!";
print DAT main::formatText( $query->{text} );
close(DAT);
# ---- Datenbank aktualisieren (ok!)
push @data, $neu;
open(DAT, ">$database_file") || die "$!";
print DAT @data;
close(DAT);
# ---- Navigation im Main_Template erweitern
unless( main::aktualisiereNavs() ){ push @errors, "Fehler: Konnte die Navigation nicht aktualisieren!" }
return 1;
} #create
1:1 aus meinem CMS-Adminscript übernommen.
Hoffe man blickt halbwegs durch.