Ciao Bright,
scusami se non mi sono fatto sentire, ma ho lavorato molto per mettere a posto il mio residence e quindi non ho dedicato molto tempo ai miei lavori di programmazione. Comunque da ieri sono tornato su quel lavoro dei database... uno in remoto e l'altro in locale.
Questo era quello che mi hai postato:
<<<
Nella pagina che si trova sul server, fai una select come questa:
rs.Open "SELECT * FROM tabella"
adesso che hai selezionato un recordset con tutti i record presenti in tabella, non ti rimane che enumerare i campi e i record:
Dim riga, testo
testo = ""
while not rs.Eof
riga = ""
for each campo in rs.Fields
riga = riga & vbTab & rs(campo)
next
if Len(riga) > 0 then riga = Mid(riga,3)
rs.Movenext
testo = testo & vbcrlf & riga
wend
if Len(testo)>0 then testo = Mid(testo,3)
Response.Write(testo)
se non ho sbagliato a scrivere qualcosa, questa pagina di tira fuori tutti i dati dal database e li restituisce in formato delimitato da Tab.
Adesso fai la parte locale, che sia una asp o un vbs.
Preleva l'output della pagina remota che hai appena fatto usando xmlhttp.
testo = objXMLHTTP.responseBody
records = testo.split(vbcrlf)
Dim i
for i = 0 to Ubound(records)
'qui fai l'inserimento nel tuo db locale
conn.Execute "INSERT INTO tabella ('" & Replace(records(i), vbTab, "', '" & "')"
next
>>>...
solo che ho provato ed ho cambiato nella pagina che visualizza i dati nel db in remoto la seguenti righe:
rs.open "Select * from Fan",cn,3,3
Dim riga, testo
testo = ""
while not rs.Eof
riga = ""
for each campo in rs.Fields
riga = vbTab & rs("Fan_nominativo") & vbcrlf & rs("Fan_mail") & "<br>"
next
if Len(riga) > 0 then riga = Mid(riga,2)
rs.Movenext
testo = testo & vbcrlf & riga
wend
if Len(testo)>0 then testo = Mid(testo,2)
Response.Write(testo)
%>
Il mid da 3 è passato a 2 e se non modifico la
riga ...
riga = riga & vbTab & rs(campo)
con
riga = vbTab & rs(campo)
mi ripete i record due volte.
Nell'altra pagina con il codice XMLHTTP l'ho scritta così:
<%
Set Cn = Server.CreateObject("ADODB.Connection")
'dbPath = Server.MapPath("mail.mdb")
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\inetpub\wwwroot\beat\mdb-database\mailing.mdb;"
'"DRIVER={Microsoft Access Driver (*.mdb)};dbq="& dbPath
Dim objXMLHTTP, StrURL, testo
StrURL = "http://www.tuosito.it/scarica.asp"
Set objXMLHTTP = Server.CreateObject("Microsoft.XMLHTTP")
objXMLHTTP.Open "GET", StrURL, false
objXMLHTTP.Send
testo = objXMLHTTP.responseBody
records = testo.split(vbcrlf)
Dim i
for i = 0 to Ubound(records)
'qui fai l'inserimento nel tuo db locale
cn.Execute "INSERT INTO fan ('" & Replace(records(i), vbTab, "', '" & "')"
next
%>
mi dà errore:
Errore di compilazione di Microsoft VBScript (0x800A03EE)
Previsto ')'
/beat/locale.asp, line 17, column 74
cn.Execute "INSERT INTO fan ('" & Replace(records(i), vbTab, "', '" & "')"
...
forse è meglio che faccio l'albergatore!!!!
Un abbraccio
Modificato da eraldo76 il 14 maggio 2004 22.45 -