Vraag & Antwoord

Webprogrammeren & scripting

Perl: automatisch herinneringen versturen

1 antwoord
  • Ik heb in een Perl-script, index.cgi, de volgende code staan: [code:1:d42375c66f]require "herinneringen.pl";[/code:1:d42375c66f] Er wordt dus verwezen naar dit script: [code:1:d42375c66f]#!/usr/bin/perl $mysql_database = "sitedb"; $mysql_server = "localhost"; $mysql_username = "maartenk"; $mysql_password = "topsecret"; use DBD::mysql; $verwerken = "ja"; my $dbh = DBI->connect("DBI:mysql:$mysql_database:$mysql_server",$mysql_username,$mysql_password) or die "Unable to connect to MySQL database: $dbh->errstr\n"; my $sth = $dbh->prepare("SELECT email, hoofdgroep, aanmelddatum FROM site_abonnementen"); $sth->execute or die "Unable to execute query: $dbh->errstr\n"; my @row; while(@row = $sth->fetchrow_array) { $email = "$row[0]"; $hoofdgroep = "$row[1]"; $moment = "$row[2]"; if($hoofdgroep eq "0") { $verwerken = "nee"; } if($verwerken eq "ja") { my $dbh = DBI->connect("DBI:mysql:$mysql_database:$mysql_server",$mysql_username,$mysql_password) or die "Unable to connect to MySQL database: $dbh->errstr\n"; my $sth = $dbh->prepare("SELECT verzonden FROM site_herinneringen WHERE email = '$email'"); $sth->execute or die "Unable to execute query: $dbh->errstr\n"; my @row; while(@row = $sth->fetchrow_array) { $aid = "$row[0]"; } $sth->finish; $dbh->disconnect; if($aid eq "") { my $dbh = DBI->connect("DBI:mysql:$mysql_database:$mysql_server",$mysql_username,$mysql_password) or die "Unable to connect to MySQL database: $dbh->errstr\n"; my $sth = $dbh->prepare("INSERT INTO site_herinneringen VALUES('','$email','','NO')"); $sth->execute or die "Unable to execute query: $dbh->errstr\n"; $sth->finish; $dbh->disconnect; } } } $sth->finish; $dbh->disconnect; 1;[/code:1:d42375c66f] Het is de bedoeling dat met dit script Perl bij ieder bezoek aan mijn site automatisch kijkt welke mensen hun abonnement op onze nieuwsbrief nog niet hebben bevestigd. Deze mensen krijgen dan, met een ander script, een mailtje toegestuurd met het verzoek om hun aanmelding alsnog te bevestigen. Helaas werkt het script niet, maar ik heb het vanuit SSH met Perl zelf getest en ik kreeg geen foutmelding. Op een of andere manier worden er geen gegevens in de MySQL-tabel 'site_herinneringen' geschreven. Wat kan er mis zijn? Ziet iemand dat zo? Laat het ff weten als je meer info nodig hebt.

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.