37 messaggi dal 22 gennaio 2002
Ciao a tutti, dovrei cercare di ricavare tutti gli indirizzi mail che ho in una tabella di un DB Access.
Ho provato così:


dim mail
  Set Conn = Server.CreateObject("ADODB.Connection")
  Conn.Provider = "Microsoft.jet.OLEDB.4.0"
  Conn.Open Server.MapPath("DB/newsletters.mdb")
    
  sql = "SELECT mail FROM mail"
  Set rs = Server.CreateObject("ADODB.Recordset")
  rs.Open sql, Conn, , , adCmdTable
  do while rs.EOF
  mail=rs(0)
  loop
  rs.Close()
  
  Set rs = Nothing
  Conn.Close()
  Set Conn = Nothing



ma mi da pagina bianca.
Come posso fare anche a mettere tra una mail e l'altra il ";"?
Grazie a tutti
spider81man

Grazie in anticipo a tutti e grazie d'esistere.
A prima vista:

do while rs.EOF

cambialo con:

do while not rs.EOF

Alberto Biancardo
593 messaggi dal 09 ottobre 2002
www.dotnetside.org
Intantoi usa questo codice da sostituire al tuo:
IF NOT rs.EOF THEN
WHILE NOT rs.EOF 
mail=mail & rs(mail) & ","
rs.MoveNext
WEND
mail=Left(mail,Len(mail)-1)
END IF

nel punto copreso tra DO WHILE e LOOP

Poi visualuzzi una pagina bianca perchè lo script non prodiuce output ma si limita a costruire una stringa contenente gli indirizzi email separtati da virgola.

Per visualizzare la stringa ottenuta basterà aggiungere:
Response.write "l'elenco delle email è: " & email

alla fine dello script

Ciao

Nota: Facendo seguito a quanto segnalato da Biank, se vuoi utilizzare DO...LOOP che verifichi la condizione true di EOF, devi impiegare il costrutto DO UNTIL ... LOOP.

DO WHILE esegue un ciclo per tutto il persistere della condizione (nel tuo caso solo quando (e non fino a quando!) il recordset arriva alla fine e fino a che resta alla fine).
DO UNTIL esegue un ciclo fino a che non viene soddisfatta la condizione (nel tuo caso fino a che non si raggiunge la fine del recordset).

Quindi nel tuo caso:
IF NOT rs.EOF THEN
DO UNTIL rs.EOF
mail=mail & rs(mail) & ","
rs.MoveNext
LOOP
mail=Left(mail,Len(mail)-1)
END IF

Modificato da vitosulla il 14 aprile 2005 13.02 -

Pochi post. Anzi, quasi quasi spengo
http://www.dotnetside.org/

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.