Logga Skicka ett mail till admin@aspwebb.com http://www.aspwebb.com
Frågeställare : Anders
Datum : 2002-06-13 09:54:42
Ämne : Asp och Acess
Fråga :
Hej Jimmy.

Tack för ditt svar förra veckan(angående automatiska mailutskick med CDONTS). Jag skall bara be om ett fördydligande. I ditt svar från 7/6 skriver du så här.

"Din idé låter väldigt kul, problemet är som sagt att vi inte vet om och hur många gånger mailet har gått iväg. I databasen kan du använda dig utav en bockruta (Ja/Nej) som indikerar om mailet har skickats eller inte? När det skickas så ändras det fältet till True."

Kan du säga något mer om detta, så att jag får in en fot i dörrspringan. Jag antar att jag skall lägga till ett nyttt fält i databasen. Men vad är det för kryssruta. Kan du ange något namn på den eller i vilken meny eller verktygsfält jag hittar den. Jag är inte något proffs på Access, tyvärr. Och hur skall min Asp-kod kunna känna av om kryssrutan är true eller false? Det måste väl vara någon villkorssats i Select-saten då? Kan man använda if där?

Och så måste ju rutan återgå till "false" när datumet ändras. Annars är ju rutan true nästa gång rätt datum för mailsändning infaller och då går det ju inte iväg något mail.

Och till sist en viktig fråga. Det är väl Acess vi pratar om här. Något annat databas-program har jag inte jobbat med.

Sommarhälningar från Anders.


Besvarare : Jimmy Staff
Datum : 2002-06-13 11:01:56
Svar :
Hej Anders, tack för din fråga.

Det duger fint med Access till detta..

Du lägger till fältypen Ja/nej (heter så i svenska access).

När du ska ändra rutan till True (ja) så måste du öppna upp databasen och ändra värdet på fältet :

RecSet("Fältnamn") = True

För att känna av om mailet är skickat kan du använda en If-sats som kollar om det är skickat eller ej :
If RecSet("Fältnamn") = True then
'Skickat redan
Else
'Ej skickat
End If

Du kan även när du öppnar databasen filtrera bort de som redan är skickade :
"SELECT * FROM Tabell WHERE Fältnamn <> 'True'"

För att få bort kryssrutorna när alla mail är skickade kan du använda följande kod :
<%
Dim Conn, RS, SQL
Set Conn = Server.Createobject("ADODB.Connection")
Set RS = Server.Createobject("ADODB.RecordSet")
Conn.Open "DATABAS"
SQL = "SELECT * FROM Tabell WHERE Fältnamn = 'False'"
RS.Open SQL, Conn, 3, 3
If RS.EOF = True Then ' Om alla är ikryssade :
Do Until RS.EOF
RS("Fältnamn") = False
RS.Update
RS.MoveNext
Loop
End If
RS.Close
Conn.Close
%>

Lycka till!






© 2010 Staff consulting.
Tillbaka till föregående sida Made by JIMMY STAFF, send me a mail!