A /etc/apache2/conf-enabled/mod_perl.conf
file-t az alábbiak szerint módosítottuk.
PerlModule ModPerl::Registry Alias /perl /var/www/perl <Directory /var/www/perl> AddHandler perl-script .cgi .pl PerlResponseHandler ModPerl::Registry Options +ExecCGI </Directory>
Lehet saját handler-t is írni, de most enm tértünk ki erre a lehetőségre. 🙂
Nézzük a hello-world-dbi.cgi
programocskánkat majd a beágyazását az apartman “Képek” oldalába.
#!/usr/bin/perl use strict; use warnings; use DBI; use Apache2::RequestRec (); use Apache2::RequestUtil (); my $r = Apache2::RequestUtil->request; print "The referer in your HTTP-Header is: ", $ENV{'HTTP_REFERER'}, "\n"; my $dbh = DBI->connect('DBI:mysql:mylike', 'mylike', 'mylike1' ) || die "Could not connect to database: $DBI::errstr"; print "<br>\n"; my $results = $dbh->selectall_hashref('SELECT * FROM mylike', 'id'); foreach my $id (keys %$results) { print "Value of ID $id is $results->{$id}->{'referer'}\n"; } $dbh->disconnect();
Használjuk a DBI és az új Apache2-es Request modulokat, majd lekérdezzük a HTTP_REFERER-t illetve egy select-tel belefetchelünk az adatbázisba. 🙂
Figyelem! Nagyon fontos a helyes beállítás az apache config oldalon.
A kis appunkat beágyazzuk mint widget-et az alábbi módon.
<div id="mylike"></div> <script>$("#mylike").load("http://localhost/perl/hello-world-dbi.cgi</script>
És akkor lássuk az eredményt.
