/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Variable mails i database
Fra : Martin Jensen


Dato : 27-06-07 12:39

Hej NG

Jeg er ved at lave et system der kan udsende mails med indhold
fra en tabel i min database.

En mail kan have følgende indhold:

strBody = "Kære "&rs("Firstname")&"
"&rs("Lastname")&""&vbcrlf&""&vbcrlf&"Vi har nu haft...." Hvor
rs("Firstname") bliver udskiftet med fornavnet på personen osv.

Det går også fint nok, men nu vil jeg så gerne have indholdet fra
mailen gemt i en anden tabel. Når jeg så udsender mailen
herefter, skriver den "&rs("Firstname")&" i stedet for at skrive
fornavnet på personen.

Er der nogen af jer der kan forklare hvorfor dette sker, og hvad
jeg kan gøre for at afhjælpe problemet?

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Jørn Andersen (27-06-2007)
Kommentar
Fra : Jørn Andersen


Dato : 27-06-07 13:17

On 27 Jun 2007 11:38:48 GMT, Martin Jensen <martin1@barnstormers.dk>
wrote:

>Jeg er ved at lave et system der kan udsende mails med indhold
>fra en tabel i min database.
>
>En mail kan have følgende indhold:
>
>strBody = "Kære "&rs("Firstname")&"
>"&rs("Lastname")&""&vbcrlf&""&vbcrlf&"Vi har nu haft...." Hvor
>rs("Firstname") bliver udskiftet med fornavnet på personen osv.
>
>Det går også fint nok, men nu vil jeg så gerne have indholdet fra
>mailen gemt i en anden tabel. Når jeg så udsender mailen
>herefter, skriver den "&rs("Firstname")&" i stedet for at skrive
>fornavnet på personen.
>
>Er der nogen af jer der kan forklare hvorfor dette sker, og hvad
>jeg kan gøre for at afhjælpe problemet?

Det er lidt svært, når du ikke skriver, hvad du har gemt eller hvordan
du trækker data ud.

Men et gæt: Du har gemt fx koden
rs("Firstname")
i databasen i samme felt som brevteksten.

Hvis det er rigtigt, hvordan skal recordset-objektet (rs) så trække
navnet ud?

Du kan løse det på flere måder. Den ene er at gemme navn (som nu) i én
tabel og så selve brevets "krop" (indhold efter navnene) i en anden
tabel.
Brevet bygges så op ved først at hente brevets indhold i en variabel:
strBrevKrop = rs1("BrevKrop")

Lav så en ny forespørgsel, som henter navnene og byg brevet med:
strBody = "Kære " & rs("Firstname") & " " & _
rs("Lastname") & vbcrlf & vbcrlf & strBrevKrop

En anden metode er at gemme *hele* brevet, men lave "pladsholdere" i
brevet og så erstatte pladsholderne med værdier, når du henter ud:
Det gemte brev:
strBody = "Kære [Fornavn] [Efternavn]" & vbcrlf & vbcrlf & _
"Vi har nu haft...."

Du trækker så brevet ud med:
strBody = rs1("Brev")
Herefter kan du replace med de udtrukne navne:
strBody = Replace(strBody, "[Fornavn]", rs("FirstName"))
strBody = Replace(strBody, "[Efternavn]", rs("LastName"))

Blot et par forslag. Den sidste metode kan være nyttig, hvis der også er
andre variable end navnet i brevet - ellers er den første nemmest at gå
til.

Hvis jeg har ramt ved siden af, så kom med noget mere forklaring på,
hvad du har gjort + den relevante kode.

Good luck!

--
Jørn Andersen,
Brønshøj

Martin Jensen (27-06-2007)
Kommentar
Fra : Martin Jensen


Dato : 27-06-07 14:08

Jørn Andersen wrote in dk.edb.internet.webdesign.serverside.asp:
> Det er lidt svært, når du ikke skriver, hvad du har gemt eller hvordan
> du trækker data ud.

Ja kan godt se det nu... Havde lidt travlt da jeg skrev :)


> En anden metode er at gemme *hele* brevet, men lave "pladsholdere" i
> brevet og så erstatte pladsholderne med værdier, når du henter ud:
> Det gemte brev:
> strBody = "Kære [Fornavn] [Efternavn]" & vbcrlf & vbcrlf & _
> "Vi har nu haft...."
>
> Du trækker så brevet ud med:
> strBody = rs1("Brev")
> Herefter kan du replace med de udtrukne navne:
> strBody = Replace(strBody, "[Fornavn]", rs("FirstName"))
> strBody = Replace(strBody, "[Efternavn]", rs("LastName"))


Mange tak... Jeg er helt sikker på at det bør virke :) Skriver igen senere
hvis det ikke gør:P



--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Ukendt (27-06-2007)
Kommentar
Fra : Ukendt


Dato : 27-06-07 13:33


"Martin Jensen" <martin1@barnstormers.dk> skrev
> Hej NG
>
> Jeg er ved at lave et system der kan udsende mails med indhold
> fra en tabel i min database.
>
> En mail kan have følgende indhold:
>
> strBody = "Kære "&rs("Firstname")&"
> "&rs("Lastname")&""&vbcrlf&""&vbcrlf&"Vi har nu haft...." Hvor
> rs("Firstname") bliver udskiftet med fornavnet på personen osv.
>
> Det går også fint nok, men nu vil jeg så gerne have indholdet fra
> mailen gemt i en anden tabel. Når jeg så udsender mailen
> herefter, skriver den "&rs("Firstname")&" i stedet for at skrive
> fornavnet på personen.
>
> Er der nogen af jer der kan forklare hvorfor dette sker, og hvad
> jeg kan gøre for at afhjælpe problemet?

Du må have et loop, som sender mails med felter fra databasen...
Du skal vel så gemme strBody i en ny tabel hver gang loopet kører...
Prøv at vise hele dit script...
Bjarne



mail@multiagenten.dk (29-06-2007)
Kommentar
Fra : mail@multiagenten.dk


Dato : 29-06-07 08:21

On 27 Jun., 15:08, Martin Jensen <mart...@barnstormers.dk> wrote:
> Jørn Andersen wrote in dk.edb.internet.webdesign.serverside.asp:
>
> > Det er lidt svært, når du ikke skriver, hvad du har gemt eller hvordan
> > du trækker data ud.
>
> Ja kan godt se det nu... Havde lidt travlt da jeg skrev :)
>
> > En anden metode er at gemme *hele* brevet, men lave "pladsholdere" i
> > brevet og så erstatte pladsholderne med værdier, når du henter ud:
> > Det gemte brev:
> > strBody = "Kære [Fornavn] [Efternavn]" & vbcrlf & vbcrlf & _
> > "Vi har nu haft...."
>
> > Du trækker så brevet ud med:
> > strBody = rs1("Brev")
> > Herefter kan du replace med de udtrukne navne:
> > strBody = Replace(strBody, "[Fornavn]", rs("FirstName"))
> > strBody = Replace(strBody, "[Efternavn]", rs("LastName"))
>
> Mange tak... Jeg er helt sikker på at det bør virke :) Skriver igen senere
> hvis det ikke gør:P
>
> --
> Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
> - Pædagogiske tutorials på dansk
> - Kom godt i gang med koderne
> KLIK HER! =>http://www.html.dk/tutorials

Hey

Det ser ud som om du fik løst din problem en anden mulighed var også
denne:

http://hjemmesideskolen.dk/scripts/nyhedsbrev/index.asp

Bruger det selv med stor fornøjelse...

Allan


Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409081
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste