Avatar billede ze-men Nybegynder
02. oktober 2007 - 20:07 Der er 11 kommentarer og
1 løsning

Få PHP til at sende en mail på bestemt dato

Hej eksperter...

Jeg vil lave et brugersystem, hvor brugerne indtaster deres fødselsdag. Jeg vil så have hjemmesiden/systemet til at udsende en mail til dem to måneder før fødselsdagen samt på selve dagen. Hvordan kan jeg gøre det automatisk?

Jeg har mailadressen og fødselsdatoen i en mySQL-database.

Håber I kan hjælpe.
Avatar billede nielle Nybegynder
02. oktober 2007 - 20:27 #1
Undersøg om dit webhotel understøtter cronjobs.

Og ellers kan du benytte dig af en ekstern service som cronjob.de.
Avatar billede uggi16 Nybegynder
03. oktober 2007 - 09:36 #2
Lidt kort kode:
<?PHP

$deresdag = ""; //Henter du fra databasen.
$datoidag = date('j/m-Y'); //Husk hvilket datoformat du bruger, her er det DD/MM-YYYY

if($deresdag == $datoidag)
{
    $to = ""; // Deres email.
    $subject = ""; // Emnet på mailen.
    $message = ""; // Beskeden til dem.
    $from = ""; // Din mail.
    mail($to,$subject,$message,"FROM:".$from);
?>

Når koden så er skrevet skal du med korte mellemrum åbne filen, evt. hver gang din side loades i browseren, for at tjekke om der er nogen der skal have en mail.

Dette gør du sådan:

<?PHP include('Ditfilnavnher.php'); ?>

Sådan undgår du Cronjobs...
Avatar billede uggi16 Nybegynder
03. oktober 2007 - 09:41 #3
Med koden ovenover kan du også tjekke om det er 2 måneder før, hvilket du gør ved at finde datoen i dag og så regne 2 måneder bagud og så sammenligne det hele igen.
Avatar billede nielle Nybegynder
03. oktober 2007 - 17:37 #4
Du undgår kun cronjobs ved selv at skulle huske på at kalde scriptet.

Bortset fra det så er ideen og koden den samme. :^)
Avatar billede uggi16 Nybegynder
05. oktober 2007 - 09:27 #5
nielle > enig men.. det hjælper ikke meget at du siger at man bare skal spørge supporten :) de kan ikke lige hjælpe HVER gang :)

Ved at kalde filen i toppen af Index/default filen løber du jo koden igennem HVER gang en bruger besøger siden ;)
Avatar billede michael_stim Ekspert
05. oktober 2007 - 09:29 #6
Cronjob må være det eneste rigtige. Hvad sker der hvis der ikke er nogen der besøger siden på ens fødselsdag.
Avatar billede uggi16 Nybegynder
05. oktober 2007 - 15:06 #7
michael_stim > Så har man ingen venner :)
Eller igen tilbagevendende besøgende :)
Men, ja, det var nok en tanketorsk... de svømmer også overalt nu om stunder...

Hvis serveren ikke understøtter cron kan du sige til :) så finder vi bare på noget andet :)
Avatar billede nielle Nybegynder
05. oktober 2007 - 16:51 #8
> nielle > enig men.. det hjælper ikke meget at du siger at man bare skal spørge supporten :) de kan ikke lige hjælpe HVER gang :)

Man behøver vel ikke at skulle spørge - noget så fundamentalt burde stå direkte på supportsiderne.
Avatar billede nielle Nybegynder
16. oktober 2007 - 08:32 #9
Hvad med noget respons?
Avatar billede ze-men Nybegynder
27. maj 2008 - 11:45 #10
har selv løst problemet
Avatar billede nielle Nybegynder
27. maj 2008 - 22:08 #11
Hvordan så løsningen så ud?
Avatar billede ze-men Nybegynder
28. maj 2008 - 10:59 #12
- et php-script der står åben på min server og som opdatere én gang i døgnet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester