Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Aggiungere campo in un form

    Ciao ragazzi
    avrei un favore da chiedere, nn conosco molto l ASP... sto utilizzando questo form molto semplice, con i seguenti campi:
    NOME
    COGNOME
    EMAIL
    TELEFONO
    MESSAGGIO

    codice:
     <%
       nome =Request.Form("nome")
       email = Request.Form("email")
       telefono = Request.Form("telefono")
       cognome = Request.Form("cognome")
       messaggio = Request.Form("messaggio")
      
       
        Set myMail=CreateObject("CDO.Message")
    	myMail.Subject = "Messaggio da " & nome &" " & cognome
    	myMail.From = "email "
    	myMail.To = "email "
    	myMail.Bcc = "email "
    	
    	textbody = "Nuovo messaggio dal sito NomeSito " & vbcrlf
    	
    	textbody = textbody &  "Nome: " & nome & vbcrlf
    	textbody = textbody &  "cognome: " & cognome & vbcrlf
    	textbody = textbody &  "email: " & email & vbcrlf
    	textbody = textbody &  "telefono: " & telefono & vbcrlf
    	textbody = textbody &  "messaggio: " & messaggio & vbcrlf
    	
    	
    	myMail.TextBody = textbody
    	myMail.Send()   
    %>
    Come faccio ad aggiungere un checkbox?
    Nell'email che arriverà dovrà essere segnato se il cliente ha accettato o no... se ha "fleggato" o meno ...


    Grazie!

  2. #2
    Utente di HTML.it L'avatar di Lak3d
    Registrato dal
    Aug 2006
    Messaggi
    1,031
    con l'html...

    codice:
    <input type=checkbox name="prova">
    e poi inserirai:

    codice:
    Checkbox=Request.Form(prova)
    mi pare restituisca 1 se è checked, altrimenti NULL... se è diverso da null avrà accettato.

  3. #3
    Quindi sarà:

    codice:
    <%
       nome =Request.Form("nome")
       email = Request.Form("email")
       telefono = Request.Form("telefono")
       cognome = Request.Form("cognome")
       messaggio = Request.Form("messaggio")
       Checkbox=Request.Form(prova)
      
       
        Set myMail=CreateObject("CDO.Message")
    	myMail.Subject = "Messaggio da " & nome &" " & cognome
    	myMail.From = "email "
    	myMail.To = "email "
    	myMail.Bcc = "email "
    	
    	textbody = "Nuovo messaggio dal sito NomeSito " & vbcrlf
    	
    	textbody = textbody &  "Nome: " & nome & vbcrlf
    	textbody = textbody &  "cognome: " & cognome & vbcrlf
    	textbody = textbody &  "email: " & email & vbcrlf
    	textbody = textbody &  "telefono: " & telefono & vbcrlf
    	textbody = textbody &  "messaggio: " & messaggio & vbcrlf
    	
    	
    	myMail.TextBody = textbody
    	myMail.Send()   
    %>

    ... scusa l'ignoranza in merito


    Cmq grazie

  4. #4
    Utente di HTML.it L'avatar di Lak3d
    Registrato dal
    Aug 2006
    Messaggi
    1,031
    sì, con la dicitura input type checkbox nella pagina precedente...

    e di qua farai anche:
    codice:
       Accettato="No"
       nome =Request.Form("nome")
       email = Request.Form("email")
       telefono = Request.Form("telefono")
       cognome = Request.Form("cognome")
       messaggio = Request.Form("messaggio")
       Checkbox=Request.Form(prova)
       If Checkbox=1 then
          Accettato="Sì"
       End if  
       
        Set myMail=CreateObject("CDO.Message")
    	myMail.Subject = "Messaggio da " & nome &" " & cognome
    	myMail.From = "email "
    	myMail.To = "email "
    	myMail.Bcc = "email "
    	
    	textbody = "Nuovo messaggio dal sito NomeSito " & vbcrlf
    	
    	textbody = textbody &  "Nome: " & nome & vbcrlf
    	textbody = textbody &  "cognome: " & cognome & vbcrlf
    	textbody = textbody &  "email: " & email & vbcrlf
    	textbody = textbody &  "telefono: " & telefono & vbcrlf
    	textbody = textbody &  "messaggio: " & messaggio & vbcrlf
    	textbody=  textbody &  "Sottoscrizione tal dei tali:" & Accettato
    	
    	myMail.TextBody = textbody
    	myMail.Send()
    ovviamente tutto poi dipende da quello che ci devi fare nel caso specifico...
    Se la spunta della checkbox sarà necessaria per inviare il tutto allora non farai certamente così, se invece si tratta di sottoscrivere o meno una mailinig list (per esempio) va bene...

  5. #5
    Originariamente inviato da Lak3d
    ovviamente tutto poi dipende da quello che ci devi fare nel caso specifico...
    Se la spunta della checkbox sarà necessaria per inviare il tutto allora non farai certamente così, se invece si tratta di sottoscrivere o meno una mailinig list (per esempio) va bene...
    Proprio cosi ... la spunta è necessaria per l'invio... senza spunta nn si può inviare.

    Con questa "esigenza" cambia di molto il codice?
    Te lo chiedo per nn farti perdere ulteriore tempo... sei già stato gentile

    Ciao

  6. #6
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Non cambi di molto. Decidi tu se tenerlo checckato o no.

  7. #7
    Originariamente inviato da diegoctn
    Non cambi di molto. Decidi tu se tenerlo checckato o no.
    In che senso "tenerlo chekkato"? Cioè chekkato d default?

    Quello che dovrei avere in mano non è altro che un form
    NOME:
    EMAIL:
    TELEFONO:
    COGNOME:
    MESSAGGIO:

    CHECK

    un utente dopo aver completato i vari campi "dovrebbe" fleggare il checbox, cosi facendo può inviarei i dati... atrimenti niente! Senza il check nn può inviarli...


    E' complicata la modifica da apportare al codice d partenza?



    Grazie

  8. #8
    Utente di HTML.it L'avatar di Lak3d
    Registrato dal
    Aug 2006
    Messaggi
    1,031
    potresti fare subito il controllo del checkbox come prima cosa e se è null dare un messaggio d'errore del tipo Response.write "Errore, devi checkare" e un bel Response. End
    Così come potresti controllare tutti i campi letti dai Request.Form e se uno solo non contiene nulla o non contiene quello che dovrebbe (un indirizzo email può essere controllato se conforme agli standard) restiutire la stessa pagina ma con un avviso in rosso.
    Di soluzioni ne hai a decine, ma se fossi in te userei un controllo in Javascript lato client nella pagina di invio. una cosa del tipo:

    codice:
    ...
    ...
    <INPUT TYPE=BUTTON VALUE="Invia" OnClick="ControllaChecked(this.form)">
    </FORM>
     
    <script>
    function ControllaChecked(obj)
    {
       Checked=obj.prova.value;
       if (Checked==1)
          window.location="nomepagina.asp"
       else
          alert("Devi checkare per poter inviare!");
    }
    </script>
    mettendo al posto di "nome pagina.asp" quella che contiene i Request.Form e al posto di "prova" quella del nome assegnato al checkbox...

  9. #9
    Utente di HTML.it L'avatar di Lak3d
    Registrato dal
    Aug 2006
    Messaggi
    1,031
    NOME:
    EMAIL:
    TELEFONO:
    COGNOME:
    MESSAGGIO:

    CHECK
    ah, non avevo visto... se questi sono esattamente i controlli del form puoi fare una cosa del tipo:

    codice:
    <INPUT TYPE=BUTTON VALUE="Invia" OnClick="ControllaValidita(this.form)"> 
    </FORM>
     
    <script language="JavaScript">
    function ControllaValidita(obj)
    {
       var c=0;
       Nome=obj.Nome.value;
       Email=obj.Email.value;
       cognome=obj.Cognome.value;
       messaggio=obj.messaggio.value;
       Tel=obj.Telefono.value;
       Check=obj.Check.value;
    
       if ( (Nome=="") || (messaggio=="") || (cognome=="") || (Tel=="") )
          alert("Campi mancanti!");
       else
       {
          if (isNaN(Tel))
             alert("Numero telefonico non valido!");
          else
          {
             for(i=0; i<Email.length; i++)
                if ( (Email.substr(i,1)=="@") || (Email.substr(i,1)==".") )
                   c++;
             if (c<2) 
                return alert("Indirizzo e-mail non valido!");
             if (Check!=1)
                return alert("Devi spuntare il checkbox per poter inviare!");
             window.location="pagina.asp"
          }
       }
    }
    </script>
    sostituendo le parti in grassetto con i reali nomi dei rispettivi controlli presenti nel form.
    In ultimo anche la pagina di destinazione

  10. #10
    Grazie raga!!

    C provo subito!


    Ciao

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.