Avatar billede cypherdenmark Nybegynder
29. november 2003 - 13:45 Der er 20 kommentarer og
2 løsninger

Automatisk check af fødselsdag i db og send mail

Hej Alle

Hvordan kan man lave en funktion som kører på ens webhotel (Azero) hverdag dag og checker om en har fødselsdag. Hvis en person har fødselsdag skal der der udsendes en mail til alle i db.

Håber i forstå

Mvh Cypherdenmark
Avatar billede webcreator Nybegynder
29. november 2003 - 13:59 #1
Nu er det en rum tid siden, at jeg sidst har kodet ASP, da jeg valgte at skifte til PHP. Men det er vel noget i stil med :

1. Forbindelse til database.
2. Løkke, som gennemkøres så længe der er fødselsdage (while)
3. Betingelse som udføres, hvis en fødselsdato = idag (Now())
Avatar billede webcreator Nybegynder
29. november 2003 - 13:59 #2
Måske nogle andre kan omsætte det til ASP.
Avatar billede webcreator Nybegynder
29. november 2003 - 13:59 #3
Og du kan ikke bruge det som PHP går jeg ud fra ?
Avatar billede cypherdenmark Nybegynder
29. november 2003 - 14:05 #4
webcreator>>
Nej jeg kan desværre ikke bruge det som php :-(

Men det er noget hen i den stil du har skrevet som jeg havde tænkt mig. Men kunne godt tænke mig at se en løsning !!

Hvordan kan ens kode aktiveres således at den kører automatisk på ens webhotel ?
Avatar billede webcreator Nybegynder
29. november 2003 - 14:08 #5
Det kan du bedst lave ved, at placere koden på din index-fil. og hvis du vil være _helt_ sikker på, at de blev eksekveret lige meget hvilken fil brugeren besøgte, så ville jeg lave det i en seperat fil, og så inkludere denne på alle dine sider.
Avatar billede thesurfer Nybegynder
29. november 2003 - 14:09 #6
du kunne vel bruge:
<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("mindatabase.mdb")
Conn.Open DSN

strSQL = "select * from TABELNAVN where fdato = #" & date() & "#"
Set rs = Conn.Execute(strSQL)

if (not rs.bof) and (not rs.eof) then
' der er fundet mindst 1 fødselsdato

do while no rs.eof
response.write "Brugeren, " & rs("brugernavn") & ", har fødselsdag idag.<br>"
rs.movenext
loop

conn.close
set conn = nothing
%>

Der bruges en Access database med:
TABELNAVN er navnet på din tabel.
"brugernavn" (type: tekst) er feltet med navnet på brugeren.
"fdato" (type: dato) er feltet med datoerne.
Avatar billede nielsmo Nybegynder
29. november 2003 - 14:14 #7
det du leder efter kan du nok finde her : http://activedeveloper.dk/aspdigital/2002080801.asp
Avatar billede cypherdenmark Nybegynder
29. november 2003 - 14:15 #8
>> webcreator
Ja, det er ok men hvis der ikke er nogle inde på siden så ville man aldrig få en reminder. Derfor hvordan laves denne proces automatisk unden at nogle skal være indblandet??.

>>thesurfer
Hvor ville du placere denne kode henne, det eneste den skal gøre er at sparke en mail afsted hvis en bruger har fødselsdag (AUTOMATISK) ??
Avatar billede webcreator Nybegynder
29. november 2003 - 14:17 #9
Ahh, ok. Troede at et brugernavn eller lignende skulle udskrives, hvis en person havde fødselsdag :)
Avatar billede webcreator Nybegynder
29. november 2003 - 14:18 #10
Men må indrømme, at jeg ikke kan give dig svar på dit spørgsmål. Selv har jeg mellem 50-250 besøgende om dagen på vores site. Så jeg ville være relativt sikker på, at en evt. mail ville blive sendt. Men hvis du ikke har så mange besøgende, så kan jeg godt se problemet.
Avatar billede thesurfer Nybegynder
29. november 2003 - 14:19 #11
webcreator> troede jeg også :)

nielsmo> det du linker til har ikke noget med en føs'dagsordning

c.d.> hvad har du af mail komponenter tilrådighed?
Avatar billede thesurfer Nybegynder
29. november 2003 - 14:24 #12
Skal mailen sendes af sted automatisk, dvs et system der checker 1 gang om dagen om der er nogen der har føsdag?
Det kan vist gøres med "Cronjob", se http://azero.dk/support/generel/

Ellers, skal koden afvikles når en bruger besøger siden.. så skal du have et ekstra felt der (et ja/nej felt) der vælger om en mail skal sendes afsted..
Avatar billede nielsmo Nybegynder
29. november 2003 - 14:29 #13
thesurfer -> Cronjob koster penge så vidt jeg kan se, og kan præcist det samme som det jeg linker til, man skal bare kode sit føs-dags script ind i det...
Avatar billede cypherdenmark Nybegynder
29. november 2003 - 14:32 #14
nielsmo >>
ja global.asa ( http://azero.dk/support/programmering/asp/global-asa/ ) kunne da være muligheden. Men jeg har svært ved at se hvordan den skal trikkes hvis der f.eks en enkelt dag ikke kommer en bruger ind på siden ??

Desværre koster cronjob penge :-(
Avatar billede thesurfer Nybegynder
29. november 2003 - 14:33 #15
nielsmo> I dit link:
"I følgende eksempel viser jeg indholdet af en global.asa fil, som for hver besøgende tjekker, om..."
Dvs, koden bliver kun udført hvis der er nogen der besøger siden. Hvis ikke der er besøgende på siden, bliver der ikke tjekket for føsdatoer..
Det vil sige, at det er lige som min kode, bare mere indviklet.

Og jeg skrev også:
"Ellers, skal koden afvikles når en bruger besøger siden.. så skal du have et ekstra felt der (et ja/nej felt) der vælger om en mail skal sendes afsted.."
Man kunne også vælge en dato i sted for ja/nej.
Det er for at undgå at en bruger får 250 mails hvor der står "Tillykke", fordi der har været 250 brugere på sitet.
Avatar billede nielsmo Nybegynder
29. november 2003 - 14:38 #16
cypherdenmark -> Så bliver der desværre ikke afsendt nogen mails, hvis du vil være helt sikker på det, så skal du bruge cronjob.....
thesurfer -> Men mailen bliver jo alligevel ikke sendt, hvis der ikke er nogen der besøger siden, for så bliver koden jo ikke udført...
Avatar billede cypherdenmark Nybegynder
29. november 2003 - 14:40 #17
Æv æv og mere æv........
Avatar billede thesurfer Nybegynder
29. november 2003 - 14:42 #18
Jeg går ikke ud fra at du kan få din computer til at åbne en internet side 1 gang i døgnet, vel? :)

Hvis du kan, kan du sagtens bruge mit script. Du skal så bare lige fortælle hvilket mail komponent du har tilrådighed.

Ellers skal du bruge Cronjob..
Avatar billede thesurfer Nybegynder
29. november 2003 - 14:45 #19
..hvis du får nok besøgende, til at indsamle minimum 16,50 kr/måned via banner/reklame, kan du overveje Cronjob.. så skal dit site bare være lidt "attraktiv", så du får mange brugere :)
Avatar billede cypherdenmark Nybegynder
29. november 2003 - 15:48 #20
tak for hjælpen det gav da stof til eftertanke.......

>>thesurfer kan du ikke lægge et svar så deler jeg nogle point ud.....
Avatar billede thesurfer Nybegynder
29. november 2003 - 16:10 #21
Et svar er lagt.
Håber du finder en løsning.
Avatar billede thesurfer Nybegynder
29. november 2003 - 16:13 #22
Takker for points.
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
Kurser inden for grundlæggende programmering

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