Allora, ti dico già che io per fare ciò che chiedi utilizzo dempre VBScript, ma ovviamente si può fare anche in JScript, cambia solo la sintassi del codice:
<%@LANGUAGE = JScript%>
<%
var cdoMessage = new ActiveXObject("CDO.Message");
Anche io di solito uso vb script...
ma avendo un codice in jscript che mi permette di completare i dati in un database,
quando gli aggiungo il vbscript sotto, mi da errore.
il codice e lo stesso dell'altro argomento trattato per i controlli.
grazie jerry.
comunque proverò.
Avresti per caso uncodice che mi permette di completare dei record attraverso un form, in vbscript?
Fino alla fine del javascript funziona ma quando gli aggiungo alla fine il vbscript mi da errore.
Per questo stavo cercando l'invio di un e-mail in jscript.
Stavo cercando qualcosa di simile in un altro linguaggio.
grazie jerry
<%@ LANGUAGE = JScript %>
<%
var nome = Request.Form("nome");
var cognome = Request.Form("cognome");
var e_mail = Request.Form("e_mail");
if (nome=="" || cognome=="" || e_mail==""){
%>
<script>
location.href("oops.htm");
</script>
<%
}
else{
var ADOConn = new ActiveXObject("ADODB.Connection");
var strConn = "";
strConn += "driver={Microsoft Access Driver (*.mdb)};";
strConn += "dbq=" + Server.MapPath("prova.mdb");
ADOConn.Open(strConn);
var RecSet = new ActiveXObject("ADODB.Recordset");
RecSet.Open("nominativi",ADOConn,3,3);
RecSet.AddNew();
RecSet("nome") = nome;
RecSet("cognome") = cognome;
RecSet("e_mail") = e_mail;
RecSet.Update();
RecSet.Close();
ADOConn.Close();
}
%>
Fino alla fine del javascript funziona ma quando gli aggiungo alla fine il vbscript mi da errore.
Per questo stavo cercando l'invio di un e-mail in jscript.
Ho provato, ma non mi funziona.
questo è tutto il mio codice:
<%@ LANGUAGE = JScript %>
<%
// Ricevo i dati dal form
var nome = Request.Form("nome");
var cognome = Request.Form("cognome");
var e_mail = Request.Form("e_mail");
// controllo campi
if (nome=="" || cognome=="" || e_mail==""){
%>
<script>
location.href("oops.htm");
</script>
<%
}
else{
// Istanzio l'oggetto Connection
var ADOConn = new ActiveXObject("ADODB.Connection");
// Creo la STRINGA DI CONNESSIONE
var strConn = "";
strConn += "driver={Microsoft Access Driver (*.mdb)};";
strConn += "dbq=" + Server.MapPath("prova.mdb");
// Apro la connessione al database selezionato
ADOConn.Open(strConn);
// Istanzio Recordset
var RecSet = new ActiveXObject("ADODB.Recordset");
// Collego Recordset alla connessione aperta
RecSet.Open("nominativi",ADOConn,3,3);
// Formulo il nuovo record
RecSet.AddNew();
RecSet("nome") = nome;
RecSet("cognome") = cognome;
RecSet("e_mail") = e_mail;
// Aggiorno la tabella
RecSet.Update();
// Chiudo Recordset
RecSet.Close();
// Chiudo la connessione
ADOConn.Close();
//chiudo jscript di controllo campi
}
%>
<%@ LANGUAGE = JScript %>
<%
var cdoMessage = new ActiveXObject("CDO.Message");
cdoMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.mioprovider.com";
cdoMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25;
cdoMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2;
cdoMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 10;
Lo script funziona, ma quando gli inserisco l'html da inviarmi al mio indirizzo di posta si blocca.
Mi sapresti speigare come mai?
Sarà dovuto da (&_) che se non ricordo viene usato in ASP..
aspetto tue notizie jerry
cdoMessage.HtmlBody = "<HTML><HEAD><title>E-Mail dal sito</title><style type='text/css'><!-- body,td,th {font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 12px;} --></style></HEAD><BODY>" &_
"<img src=logowh.jpg><br><br>" &_
"<table width='90%' border='0' cellspacing='3' cellpadding='3'><tr><td><br><br><b><font color=red>Dati Inviati:</b></font><br><br></td></tr><tr><td><b>Nome</b></td><td>" &_
nome &_
"</td></tr><tr><td width='300'><b>Settore</b></td><td>" &_
cognome &_
"</td></tr><tr><td width='300'><b>E-Mail</b></td><td><a href=mailto:" &_
e_mail &_
">" &_
e_mail &_
"</A>" &_
"</td></tr><tr><td><font color=black>L'utente ha accettato le norme sulla privacy relative al trattamento dei dati.</font><br></td><td>" &_
"</td></tr></table></BODY></HTML>";
:book:
Prova a togliere il codice HTML e ad inviare testo normale nel body della mail per vedere se è proprio l'HTML che da problemi, altrimenti dovresti dirmi con più precisione che errore ti da
Se provo solo ad inserire testo oppure, invio questa stringa:
<img src=http://www.mioprovider.com/img/logowh.jpg><br><br>
arriva correttemente.
Ma quando provo ad aggiungere l'html
o tabelle mi da errore.:incazz2:
anzi mi da errore anche senza <html> <head>
pensavo che lui costruiva già un html nel momento dell'invio, allora li ho segati provando. ma mi dava errore.
Se provo solo ad inserire testo oppure, invio questa stringa:
<img src=http://www.mioprovider.com/img/logowh.jpg><br><br>
arriva correttemente.
Ma quando provo ad aggiungere l'html
o tabelle mi da errore.:incazz2:
Non capisco jerry perchè spezzetti la stringa del corpo della mail, non può funzionare così
Componi la stringa così:
cdoMessage.HtmlBody = "<BODY><img src=logowh.jpg><br><br><table width='90%' border='0' cellspacing='3' cellpadding='3'><tr><td><br><br><b><font color=red>Dati Inviati:</b></font><br><br></td></tr><tr><td><b>Nome</b></td><td>nome</td></tr><tr><td width='300'><b>Settore</b></td><td>cognome</td></tr><tr><td width='300'><b>E-Mail</b></td><td><a href='mailto:e_mail'>e_mail</A></td></tr><tr><td><font color=black>L'utente ha accettato le norme sulla privacy relative al trattamento dei dati.</font><br></td><td></td></tr></table></BODY>";
ovvero tutto su un unico blocco SENZA a capo!
E mi raccomando, non usare apici doppi, tranne quelli che ci sono all'inizio ed alla fine
Ciao Pole ho già provato a costruire la stringa come dici tu:
CODICE:
<BODY><img src=logowh.jpg><br><br><table width='90%' border='0' cellspacing='3' cellpadding='3'><tr><td><br><br><b><font color=red>Dati Inviati:</b></font><br><br></td></tr><tr><td><b>Nome</b></td><td>"nome" C'è solo un problema.
Quando mi arriva l'e-mail non mi mostra il contenuto cioè mi scrive Nome= nome.
CODICE:
<BODY><img src=logowh.jpg><br><br><table width='90%' border='0' cellspacing='3' cellpadding='3'><tr><td><br><br><b><font color=red>Dati Inviati:</b></font><br><br></td></tr><tr><td><b>Nome</b></td><td>"nome" ERRORE:
Ho provato ad racchiudere tra virgolette es. Nome = "nome"
come la variabile ma mi da il seguente errore: Microsoft JScript compilation error '800a03ec' :dipser:
No jerry, non hai sostituito la stringa come ti ho detto io
Non devi mettere gli apici doppi all'interno del corpo dell'e-mail, perchè altrimenti va in bomba il programma!
...<b>Nome</b></td><td>"nome"...</td></tr>
Se vuoi aggiungere una variabile allora devi fare
...<b>Nome</b></td><td>" + nome + "</td></tr>...
Gli apici doppi servono a delimitare il contenuto della stringa.
Ti faccio un esempio per farti capire:
abbiamo una variabile a che contiene un nome, per esempio Jerry.
Ora, se vogliamo che nel corpo della mail venga scritto: Ciao Jerry, benvenuto!
dovremo fare
a = "Jerry"
cdoMessage.HtmlBody = "Ciao " + a + ", benvenuto!"
Capito ora come funziona la logica delle stringhe?
Grazie pole adesso si che è chiaro.
Da come hai potuto capire io non ci capisco ancora tanto.
Mi sei stato di grande aiuto, e non so come sdebitarmi.
spero di rincontrarti nei prossi argomenti.
Con affetto jerry.infopwk@mybox.it
Grazie pole adesso si che è chiaro.
Da come hai potuto capire io non ci capisco ancora tanto.
Mi sei stato di grande aiuto, e non so come sdebitarmi.
spero di rincontrarti nei prossi argomenti.
Con affetto jerry.infopwk@mybox.it