#!/usr/bin/perl -T use strict; use CGI qw(:standard); use DBI; my $zacatek = Funkce::zacatek(); my $konec = Funkce::konec(); my $telo = ""; $telo .= start_form(-method=>"post"); $telo .= "Jméno: " . textfield(-name=>"jmeno", -size=>30) . br; $telo .= "Email: " . textfield(-name=>"email", -size=>30) . br; $telo .= textarea(-name=>"text", -cols=>40, -rows=>7) . br; $telo .= submit(-name=>"akce", -value=>"OK"); $telo .= end_form; my $dbname = "project"; my $dbuser = "user"; my $dbpasswd = ""; my $dbh; if(!($dbh = DBI->connect("dbi:mysql:dbname=$dbname", $dbuser, $dbpasswd))){ $telo .= h1("Nastal problém."); } my $q = $dbh->prepare("SELECT jmeno, email, text, datetime FROM nastenka ORDER BY datetime DESC"); $q->execute; while(my($jmeno, $email, $text, $datetime) = $q->fetchrow_array){ $telo .= hr; $telo .= i($datetime) . br; $telo .= a({-href=>"mailto:$email"}, $jmeno) . br; $telo .= $text; } if(param("akce")){ my $jmeno = param("jmeno"); my $email = param("email"); my $text = param("text"); if(!$jmeno or !$text){ $telo .= h1("Jméno a text jsou povinné."); }else{ my $quoted_jmeno = $dbh->quote($jmeno); my $quoted_email = $dbh->quote($email); my $quoted_text = $dbh->quote($text); my @d = localtime; my $datetime = 1900+$d[5]."-$d[4]-$d[3] $d[2]:$d[1]:$d[0]"; if($dbh->do("INSERT INTO nastenka (jmeno, email, text, datetime) VALUES ($quoted_jmeno, $quoted_email, $quoted_text, '$datetime')")){ $telo .= h1("Vloženo"); }else{ $telo .= h1("Nepodařilo se vložit."); } } } $dbh->disconnect; END { print $zacatek; print $telo; print $konec; }