#!/usr/bin/perl -T
use strict;
use warnings;
use CGI::Carp qw(fatalsToBrowser);
use CGI qw(param url);
use DBI;
my $cgi = CGI->new; print $cgi->header;
my $dbh = &db_open("test", "****", "****");
my $set = param("set"); $set =~ s/[^0-9]//g;
my $action = param("action"); $action =~ s/[^a-zA-Z0-9]//g;
my $sth_count = &db_abfrage($dbh, "SELECT answer_id FROM answer WHERE answer_post='on'");
my $count = $sth_count->rows; # Gezaehlte ID's aus der Datenbank (10 ID'S sind zum Test in der Datenbank)
my $max = "2"; # Ausgaben pro Seite
my $pageset = $count/$max+1;
my $test = "";
################################################# # Startup
if ($action eq "page") {
if ($set =="" or $set == m/^[0-9]/) {$set = 0;} # Fehler abfangen
for (my $i=1, my $j=0; $i<$pageset; $i++, $j = $j+$max) {
if($set == $j) {
$test .= "[$i], ";
} else {
$test .= "$i, ";
}}
print "
\n$test
";
my $sth_answer = &db_abfrage($dbh, "SELECT * FROM answer WHERE answer_post='on' LIMIT $set, $max");
my $allref = $sth_answer->fetchall_arrayref ( {} );
foreach my $answer (@$allref) {
print $answer->{'answer_id'}." - ".$answer->{'answer_text'}."
\n";
} $dbh->disconnect();
exit; }
############################################################## # Exit
else {
print "Fehler! Zurueck"; # Fehler abfangen
exit; }
######### # Subroutinen######################
sub db_open {
my ($db, $user, $passwort) = @_;
my $dsn = "DBI:mysql:database=$db";
my $dbh = DBI->connect($dsn, $user, $passwort);
die ("No Database ...") if (!defined($dbh) or $dbh eq "");
return $dbh;
}
sub db_abfrage {
my $dbh = shift;
my $sql = shift;
my $sth = $dbh->prepare($sql) or die($dbh->errstr);
$sth->execute or die($sth->errstr);
return $sth;
}