Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]8599[/thread]

Konfigurationsdateien erzeugen



<< >> 5 Einträge, 1 Seite
kruemmel
 2006-12-23 17:16
#72699 #72699
User since
2006-02-12
33 Artikel
BenutzerIn
[default_avatar]
Hallo,

ist es mit Perl möglich das ich über ein Webformular Konfigurationsdaten eingebe und diese Daten dann in einer MySQL DB gespeichert werden? Im Anschluss soll mit Perl die MySQL DB ausgelesen werden und aus den Werten eine Konfigurationsdatei erstellt werden. Das gleiche Szenario wird oft bei mit PHP erstellten Webseiten vollzogen. Dort werden dann auch Werte über ein Formular in eine DB gespeichert und im Anschluss eine Webseite aus diesen Werten erstellt. Falls diese Konstellation mit Perl möglich ist, wäre es schön wenn ihr mir mal ein Beispiel in Form einer Webseite oder eines Eintrags zeigen könntet. Danke schon mal im vorraus.
renee
 2006-12-23 17:53
#72700 #72700
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Vielleicht hilft Dir das hier weiter:

Wie werte ich Formulareingaben aus?
Perl und Datenbanken

Die dafuer interessanten Module sind CPAN:DBI (im Zusammenspiel mit CPAN:DBD::mysql) und CPAN:CGI.
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/
bloonix
 2006-12-23 18:26
#72701 #72701
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
form.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
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/perl -wT
use strict;
use HTML::Template;
use CGI::Carp qw(fatalsToBrowser);
use CGI;

my $cgi = new CGI;
my $vars = $cgi->Vars;
my $tmpl = HTML::Template->new(filename => './form.tmpl');

my $statement = genstt('table', $vars);

$tmpl->param(STATEMENT => $statement);
print "Content-Type: text/html\n\n", $tmpl->output;

sub genstt {
my $tbl = shift;
my $vars = shift;
my $stt = ();

# Die erlaubten Parameter filtern ...
foreach my $param (qw(param1 param2 param3)) {
next unless defined $vars->{$param};
next if $vars->{$param} eq '';

# Parameter anhaengen
if (defined $stt) {
$stt .= ",$param='$vars->{$param}'";
} else {
$stt = "$param='$vars->{$param}'";
}
}

return $stt ? "insert into $tbl set $stt" : undef;
}


form.tmpl
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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Form Config</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body>
<TMPL_IF NAME="STATEMENT">
<pre>Statement: <TMPL_VAR NAME="STATEMENT"></pre>
</TMPL_IF>
<form action="/cgi/form.cgi" method="POST">
<table>
<tr>
<td>Param1</td>
<td><input name="param1" type="text" maxlength="40" value=""/></td>
</tr><tr>
<td>Param2</td>
<td><input name="param2" type="text" maxlength="40" value=""/></td>
</tr><tr>
<td>Param3</td>
<td><input name="param3" type="text" maxlength="40" value=""/></td>
</tr><tr>
<td></td>
<td><input type="submit" value="Absenden"></td>
</tr>
</table>
</form>
</body>
</html>


Naja... nur so ein Beispiel...

Hier zum anklicken :)

In meinem Beispiel werden die Werte natürlich nicht geprüft,
was du auf jeden Fall tun solltest und nicht einfach blindlinks
übernehmen!\n\n

<!--EDIT|opi|1166892371-->
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
Ronnie
 2006-12-23 18:40
#72702 #72702
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
[quote=kruemmel,23.12.2006, 16:16]Im Anschluss soll mit Perl die MySQL DB ausgelesen werden und aus den Werten eine Konfigurationsdatei erstellt werden.[/quote]
Ergänzend zu allem erwähnten und bereits aufgezeigtem, kann man an dieser Stelle noch auf CPAN:YAML hinweisen.
renee
 2006-12-23 18:40
#72703 #72703
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Bitte das quote von CPAN:DBI verwenden (oder die ?-Schreibweise) um Sicherheitsluecken zu vermeiden...
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/
<< >> 5 Einträge, 1 Seite



View all threads created 2006-12-23 17:16.