Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14

Discussione: CDOSYS e campi form

  1. #1

    CDOSYS e campi form

    Ciao a tutti,
    allora sto realizzando una sezione per registrare gli utenti al sito.
    L'utente inserisce nei campi del form nome, cognome, nomeutente ed e-mail una volta premuto "invia" viene generata una password casuale ed i dati vengono inviati al database il form rimanda poi ad una pagina "mail.asp" che tramite il componente CDOSYS invia una mail all'utente in cui chiede la conferma dell'iscrizione (e che ovviamente invia la password generata dallo script asp).
    E qui sorge il problema... infatti mi dà questo errore:
    codice:
    CDO.Message.1 error '8004020d' 
    
    At least one of the From or Sender fields is required, and neither was found.
    Ossia mi dice che i campi from o sender del componente CDOSYS non contengono alcun indirizzo e-mail!

    Io i campi li recupero tramite il request.form("email")

    Il mio dubbio è questo... dato che la pagina di registrazione invia i dati al database è possibile che i campi del form si "svuotino" e che quindi il recupero nella pagina "mail.asp" non avviene?

    Ho infatti provato a mettere nei campi From e Sender direttamente una mail valida (es. iMsg.From="miamail@mail.it") ed ho notato che tutto funziona... la mail arriva!

    Dove sbaglio?
    Aiuto
    Fabio

  2. #2
    Posta il codice di invio usando il tag CODE del forum.

  3. #3
    Ecco il codice della pagina mail.asp:
    codice:
    
    <%
    
    DIM invioA
    invioA =  "miaemail@miosito.it"
    
    nomeutente= request.Form("user")
    nome= Request.form("nome")
    cognome= Request.form("cognome")
    mailutente= Session("ricordamail")
    passutente= Request.form("password")  
    link="http://www.miosito.it/conferma.asp?password="
    	
    DIM iMsg, Flds, iConf
    
    Set iMsg = CreateObject("CDO.Message")
    Set iConf = CreateObject("CDO.Configuration")
    Set Flds = iConf.Fields
    
    Flds(cdoSendUsingMethod) = cdoSendUsingPort
    Flds(cdoSMTPServer) = "smtp.miosito.it" 
    Flds(cdoSMTPServerPort) = 25
    Flds(cdoSMTPAuthenticate) = cdoAnonymous 
    Flds.Update
    
    With iMsg
       Set .Configuration = iConf
       iMsg.To = invioA
       iMsg.From = request("email")
       iMsg.Sender = request("email")
       iMsg.Subject = "Richiesta iscrizione"
       iMsg.HtmlBody = "<html><head></head><body>Ciao  " & nome & cognome & " hai ricevuto questa e-mail perchè hai richiesto l'iscrizione al nostro sito. La password che ti è stata assegnata è: " & passutente  & "
    
    <div align=""center"">Per confermare l'iscrizione clicca su questo link: " & link & Request.form("password")
    
       iMsg.Send
       Set iMsg=Nothing
    End With
    %> 
    <script>
    document.location.replace('http://www.miosito.it/send.asp');
    </script>
    Tieni conto che se inserisco una mail diretta (es. "miaemail@email.it") nei campi:
    codice:
       iMsg.From = request("email")
       iMsg.Sender = request("email")
    tutto funziona correttamente!
    Ho provato anche ad aggiungere il .form ma niente non funziona non "legge i campi"!!!
    Forse li perdo in quanto li invio ad database?!? Infatti anche se arriva la mail i campi che devo prendere dal form non si visualizzano!!
    Ho provato anche a fare così: mailutente= Session("ricordamail") inserendo un campo nascosto nella pagina del form...
    Aiuto... qualche suggerimento?

  4. #4
    Ma il campo form email esiste?
    Stampa la variabile e controlla che sia valorizzata.

  5. #5
    Si nella pagina con il form per la registrazione il campo "email" esiste e compare anche nel DB!
    Il problema è che sembra non passarlo alla pagina mail.asp

  6. #6
    Stampa la variabile e controlla e è valorizzata.

  7. #7
    ho fatto un response.write alla fine della pagina mail.asp così:
    request.form("email") ed infatti non scrive nulla!
    quindi è chiaro che non porta le variabili nella pagina mail.asp

  8. #8
    Originariamente inviato da fabiodm75
    ho fatto un response.write alla fine della pagina mail.asp così:
    request.form("email") ed infatti non scrive nulla!
    quindi è chiaro che non porta le variabili nella pagina mail.asp
    Controlla il nome del campo e verifica che si trovino all'interno del tag form per essere passate.

  9. #9
    già fatto... il campo si chiama email ed dentro il form

  10. #10
    Originariamente inviato da fabiodm75
    già fatto... il campo si chiama email ed dentro il form
    Ed allora controlla l'invio.
    L'errore è chiaro.. non invii i dati.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.