Thread Lösch Button (60 answers)
Opened by haijp at 2006-05-09 12:24

renee
 2006-05-09 12:39
#7489 #7489
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Das muss ein Formular sein, mit einem Hidden-Field mit der Aktion und der Button muss das dann abschicken...

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
125
126
127
128
129
#!/usr/bin/perl

use strict;
use warnings;
use CGI qw( :all );
use CGI::Carp qw(fatalsToBrowser warningsToBrowser);
use Tie::File;

# Initialisierung
##################

my $cgi = new CGI;
my %params = $cgi->Vars();
my $file = '/SAN/content/cgi-bin/links';
my $save_error = "";
my $i = 0;
my $k = 0;

# Link speichern
#################

if ( defined $params{write} && $params{write} eq "true" ) { #
$params{text} =~ s/\r\n/<br>/sg;

if (! -f $file ) {
&create_linklist;
}
else {
if ( $params{url} =~ /^http:\/\/.*$/ ) {
open ( D, '>>', $file ) or die "Could not save data. $!";
print D "#" x80, "\nLINK: $params{url}\nTEXT: $params{text}\n";
close D;
}
else {
$save_error = "<p>Bitte geben Sie den kompletten URL an, sonst kann ";
$save_error .= "Ihr Link nicht gespeichert werden.<br /> Beispiel: ";
$save_error .= "http://ihr.neuer.link.com/</p>";
}
}
}
elsif(defined $params{action} and $params{action} eq 'delete'){
delete_link($params{link});
}

# Links laden
##############

my ( @data, @links, @texts );

if (! -f $file ) {
&create_linklist;
}
else {
open ( F, '<', $file ) || die "Could not open $file. $!";
@data = grep { /^[^#]/ } <F>;
close F;
$i = $k = 0;
foreach ( @data ) {
chomp ( $_ );
if ( $_ =~ /^LINK:\s/ ) {
$_ =~ s/^LINK:\s//;
$links[$i] = $_;
$i++;
}
else {
$_ =~ s/^TEXT:\s//;
$texts[$k] = $_;
$k++;
}
}
}

# Dokument ausgeben
####################

my $author = "Andre Hornig";

print $cgi->header(),
$cgi->start_html(
-title => "Linkit - Eine kleine Favoritenliste.",
-bgcolor => "#99ccff",
'Linkit'
),
$cgi->h1('Linkit'),
$cgi->p({-style => 'color:red'}, "Verfasst von: ", $cgi->i($author)),
$cgi->hr({-noshade => undef, -size => '1'}),

$cgi->p('Eine kleine Favoritenliste');

$i = 0;
foreach ( @links ) {
print qq~<form action="./linkit.pl" method="post">
<input type="hidden" name="action" value="delete">
<input type="hidden" name="link" value="$texts[$i]">
<input type="submit" value="löschen">
</form>
~;
print $cgi->p(
{-style => "margin:5px;"}, $i+1, ") ", $cgi->a( {-href => $_}, $texts[$i] )
);
$i++;
}

print << "EOF";
<h1>Neuen Link eintragen</h1>
$save_error
<form action="" method="post">
<p>
Link:<br />
<input type="text" name="url" size="40" maxlength="40" />
</p>
<p>
Beschreibung:<br />
<textarea rows="5" cols="50" name="text"></textarea>
<input type=hidden name="write" value="true" />
</p>
<p><input type="submit" value="Absenden" /></p>
</form>
EOF

$cgi->end_html();

sub delete_link{
my ($link_text) = @_;
tie my @array,'Tie::File',$file or die $!;
my ($index) = grep{$array[$_] =~ /TEXT:\s$link_text/}(0..scalar(@array)-1);
@array[$index-2..$index] = ('') x 3;
untie @array;
}
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/
Antworten mit Zitat

View full thread Lösch Button