Thread Probleme mit 2fachem Template-Loop (23 answers)
Opened by Bob at 2009-12-29 22:29

renee
 2009-01-01 15:18
#129906 #129906
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Guest Bob
Code (perl): (dl )
1
2
3
4
5
6
#!/usr/bin/perl 

use strict;
use warnings;
use CGI;
use CGI qw(:standart);


* Warum bindest Du CGI zweimal ein?

* s/standard/standard/;

* Da Du das Modul Objektorientiert benutzt, brauchst Du das qw(:standard) nicht. Das importiert Dir nur etliche Funktionen in Deinen Namensraum.

Guest Bob
Code (perl): (dl )
1
2
3
4
5
6
# ---------- Ip auf Blackliste überprüfen ---------- #  
my $dbh = DBI->connect("dbi:mysql:$config{'mysql_db'}:$config{'mysql_host'}","$config{'mysql_user'}","$config{'mysql_pass'}") || die("$DBI::errstr\n");
# ...
# ---------- Settings lesen ---------- #  
my $dbh = DBI->connect("dbi:mysql:$config{'mysql_db'}:$config{'mysql_host'}","$config{'mysql_user'}","$config{'mysql_pass'}") || die("$DBI::errstr\n");
my $sth = $dbh->prepare("SELECT blogname,messages_per_page FROM settings") || die("$DBI::errstr\n");


* Warum machst Du hier immer ein disconnect und dann ein neues connect? Das ist unnötig und kostet nur Zeit.

Auch solltest Du nicht immer my $sth = ... schreiben. Wenn Du das Programm mal auf der Kommandozeile laufen lässt, dann wirst Du mehrere Warnungen bekommen, dass Du die Variable immer wieder neu deklarierst. Du musst das my nur bei der ersten Verwendung schreiben.

Allerdings ist es für die Wartbarkeit besser, wenn Du immer neue Variablen mit sprechenden Namen verwendest.

Guest Bob
Code (perl): (dl )
1
2
my $page = CGI::param('page');
        if ($page !~ /^\d*$/) { $page = 0; }
Am Anfang verwendest Du CGI Objektorientiert und jetzt auf einmal die Funktionen. Du kannst hier $cgi->param('page') statt CGI::param('page') schreiben.
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/

View full thread Probleme mit 2fachem Template-Loop