• User Attivo

    Ma è proprio quello che ho fatto, il tuo codice e cioè
    <%
    if Session("registrato")="sicuro" then
    Response.Redirect("reicreg.htm")
    end if
    %>
    L' ho inserito in cima alla pagina da nascondere e cioè
    "reg_ok.htm" che sarebbe la pagina che appare dopo l'avvenuta corretta registrazione
    naturalmente l'ho modificata perchè la mia pag "check.asp" in session era diversa (vedi sopra) :bho:


  • User Attivo

    Aspetta.....Aspetta.....!!!!
    Ho provato a rinominare la pag da nascondere (reg_ok.htm)
    da htm ad asp e funziona, ma allora le pag da nascondere devono per forza essere in asp ?


  • User Attivo

    eh siamo in sezione asp 🙂
    si solo per l'asp funziona 🙂


  • User Attivo

    Ho provato a lasciare vuoti i campi e cliccare sul tasto registrami e mi appare un schermata bianca con un errore cosa dovrei inserire per obbligare l'utente a riempire tutti i campi ?

    Grazie !!!!!


  • User Attivo

    @gelova said:

    Ho provato a lasciare vuoti i campi e cliccare sul tasto registrami e mi appare un schermata bianca con un errore cosa dovrei inserire per obbligare l'utente a riempire tutti i campi ?

    Grazie !!!!!

    Ricerca validazione form su google.

    Ad ogni modo ti consiglio di validare il form sia via javascript che, successivamente, via asp. Via asp devi controllare che i valori immessi dall'utente siano validi, ad esempio qualcosa del genere:

    
    nome = Request("nome")
    dataNascita = Request("dataNascita")
    
    If nome = "" then errore = "Nome &eacute; vuoto<br>"
    If dataNascita = "" or not IsDate(dataNascita) then errore = errore  & "Data di nascita non valida<br>"
    ...
    
    If errore <> "" then
     Response.Write(errore)
     Response.End
    Else
    ...
    End if
    
    

    :ciauz:


  • User Attivo

    Mi da questo errore > Microsoft VBScript compilation error '800a03f6'
    Expected 'End'

    Il codice è questo

    <%
    theSchema="http://schemas.microsoft.com/cdo/configuration/"
    Set cdoConfig=server.CreateObject("CDO.Configuration")
    cdoConfig.Fields.Item(theSchema & "sendusing")=2
    cdoConfig.Fields.Item(theSchema & "smtpserver")="smtp.soluzionepc.it"
    cdoConfig.Fields.Update

    set cdoMessage=Server.CreateObject("CDO.Message")
    cdoMessage.Configuration=cdoConfig

    cdoMessage.From=Request.Form("email")
    cdoMessage.To="[email protected]"
    cdoMessage.Subject=Request.Form("subject")
    cdomessage.HtmlBody="Nome:" & request.form("nome") & "<br/>Cognome:" & Request.form("cognome") & "<br/>Citta:" & request.form("citta") & "<br/>Email:" & request.Form("email") & "<br/>Commenti:" & request.Form("commenti")
    cdoMessage.Send

    Set cdoMessage=Nothing
    Set cdoConfig=Nothing

    nome = Request("nome")
    cognome = Request("cognome")
    citta = Request(citta)
    email = Request(email)
    commenti = Request(commenti)

    If nome = "" then errore = "Nome é vuoto<br>"
    If cognome = "" then errore = "cognome é vuoto<br>"
    If citta = "" then errore = "citta é vuoto<br>"
    If email = "" then errore = "email é vuoto<br>"
    If cognome = "" then errore = "commenti é vuoto<br>"
    If errore <> "" then
    Response.Write(errore)
    Response.End

    ❌x:x


  • Moderatore

    @gelova said:

    Mi da questo errore
    Il codice è questo

    ❌x:x

    Aggiungi end if alla fine

    Ciao


  • User Attivo

    L'errore è cambiato > CDO.Message.1 error '8004020d'
    At least one of the From or Sender fields is required, and neither was found.
    /inviomail.asp, line 15

    il file inviomail.asp è questo

    <%
    theSchema="http://schemas.microsoft.com/cdo/configuration/"
    Set cdoConfig=server.CreateObject("CDO.Configuration")
    cdoConfig.Fields.Item(theSchema & "sendusing")=2
    cdoConfig.Fields.Item(theSchema & "smtpserver")="smtp.soluzionepc.it"
    cdoConfig.Fields.Update

    set cdoMessage=Server.CreateObject("CDO.Message")
    cdoMessage.Configuration=cdoConfig

    cdoMessage.From=Request.Form("email")
    cdoMessage.To="[email protected]"
    cdoMessage.Subject=Request.Form("subject")
    cdomessage.HtmlBody="Nome:" & request.form("nome") & "<br/>Cognome:" & Request.form("cognome") & "<br/>Citta:" & request.form("citta") & "<br/>Email:" & request.Form("email") & "<br/>Commenti:" & request.Form("commenti")
    cdoMessage.Send <--------------line 15

    Set cdoMessage=Nothing
    Set cdoConfig=Nothing

    nome = Request("nome")
    cognome = Request("cognome")
    citta = Request(citta)
    email = Request(email)
    commenti = Request(commenti)

    If nome = "" then errore = "Nome é vuoto<br>"
    If cognome = "" then errore = "cognome é vuoto<br>"
    If citta = "" then errore = "citta é vuoto<br>"
    If email = "" then errore = "email é vuoto<br>"
    If cognome = "" then errore = "commenti é vuoto<br>"
    If errore <> "" then
    Response.Write(errore)
    End if
    ❌x:x


  • Moderatore

    @gelova said:

    L'errore è cambiato
    il file inviomail.asp è questo
    ❌x:x

    At least one of the From or Sender fields is required, and neither was found

    Cerchiamo di capirli i messaggi di errore.
    Almeno un mittente è necessario.
    Quindi cdoMessage.From=Request.Form("email") non contiene l'email


  • User Attivo

    Allora sono due le cose o il form è costruito male o sono io che non ho capito un tubo......
    credo che l'unica cosa necessaria sia l'email del destinatario non quella del mittente,come faccio a sapere l'email del mittente (il mittente è colui che riempie il form) .
    Considera che il form ha questi campi Nome,Cognome,Città,email,Commenti (come si evince dal codice) :bho:


  • User Attivo

    @gelova said:

    Allora sono due le cose o il form è costruito male o sono io che non ho capito un tubo......
    credo che l'unica cosa necessaria sia l'email del destinatario non quella del mittente,come faccio a sapere l'email del mittente (il mittente è colui che riempie il form) .
    Considera che il form ha questi campi Nome,Cognome,Città,email,Commenti (come si evince dal codice) :bho:

    L'email mittente è quella inserita dall'utente (Request("email")) quindi sta bene così ma andrà in errore se lasci quel campo vuoto. Deve essere un campo obbligatorio.


  • User Attivo

    Madai scusami ma questo codice che mi hai dato tu non dovrebbe servire appunto a validare i campi ?

    If nome = "" then errore = "Nome é vuoto<br>"
    If cognome = "" then errore = "cognome é vuoto<br>"
    If citta = "" then errore = "citta é vuoto<br>"
    If email = "" then errore = "email é vuoto<br>"
    If cognome = "" then errore = "commenti é vuoto<br>"
    If errore <> "" then
    Response.Write(errore)
    End if
    Ma allora perchè se lascio il campo email vuoto mi dà la classica pag.bianca ?:bho:


  • User Attivo

    Perchè è sbagliato qui (occhio agli apici):

    
    nome = Request("nome")
    cognome = Request("cognome")
    citta = Request("citta")
    email = Request("email")
    commenti = Request("commenti")
    
    

    inoltre modifica il codice che ti ho dato come segue:

    
    If nome = "" then errore = "Nome &eacute; vuoto<br>"
    If cognome = "" then errore = errore & "cognome &eacute; vuoto<br>"
    If citta = "" then errore = errore & "citta &eacute; vuoto<br>"
    If email = "" then errore = errore & "email &eacute; vuoto<br>"
    If cognome = "" then errore = errore & "commenti &eacute; vuoto<br>"
    If errore <> "" then
    Response.Write(errore)
    End if
    
    

  • User Attivo

    Grazie dei suggerimenti madai, ho fatto le modifiche come da te suggerite
    però se non viene riempito il campo email, mi esce sempre il messaggio

    CDO.Message.1 error '8004020d'
    At least one of the From or Sender fields is required, and neither was found.
    /inviomail.asp, line 15

    Se viene riempito il campo email e si lasciano vuoti gli altri funziona !:bho:


  • User Attivo

    Il controllo per la validazione dei campi va **ovviamente **messo in cima alla pagina non alla fine. **Prima **avviene il controllo, **dopo **se il controllo è positivo si prosegue con l'invio dell'email altrimenti si blocca stampando a video l'errore.

    PS: aggiungi Response.End in caso di errore, così:

    
    If nome = "" then errore = "Nome &eacute; vuoto<br>"
    If cognome = "" then errore = errore & "cognome &eacute; vuoto<br>"
    If citta = "" then errore = errore & "citta &eacute; vuoto<br>"
    If email = "" then errore = errore & "email &eacute; vuoto<br>"
    If cognome = "" then errore = errore & "commenti &eacute; vuoto<br>"
    If errore <> "" then
    Response.Write(errore)
    **Response.End**
    End if
    
    

  • User Attivo

    Funziona yahoooooo !!!!! Madai sei un grande.....un'ultima cosa.....so che ti ho stressato abbastanza....l'ultimo sforzo,il prog. funziona perfettamente con IE 6 mentre ho provato con Firefox e nella pagina che contiene il form (contatti.html) in cima prima dei campi la scritta

    <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>

    perchè ?????


  • User Attivo

    :mmm:


  • User Attivo

    @gelova said:

    Funziona yahoooooo !!!!! Madai sei un grande.....un'ultima cosa.....so che ti ho stressato abbastanza....l'ultimo sforzo,il prog. funziona perfettamente con IE 6 mentre ho provato con Firefox e nella pagina che contiene il form (contatti.html) in cima prima dei campi la scritta

    <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>

    perchè ?????

    Se e' una pagina html non devi mettere l'intestazione <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>. Eliminala.

    :ciauz:


  • User Attivo

    ❌x:x ........Questa cache.....di firefox certe volte fa i capricci...

    Ok ! Risolto, grazie ancora !!!!


  • User Newbie

    anch'io ho un sito ... index.htm va bene ma gli altri noo!!!!!!!!

    appare il codice sorgente invece ke la pagina.

    :?:x