Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    269

    validazione form (radio)

    problema:estraggo dei dati e li riporto in una form(form1)
    per ogni record ho una select e un radio

    riesco a postare in una pagina successiva i dati
    ma senza controllo
    ecco la pagina
    codice:
    <%@ language = vbscript%>
    <html>
    <head>
    <title>mail</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <script language="JavaScript">
    function controlla(radio)
      {
      var n=0;
      var cc = document.form1.radio;
      for(var i=0; i<cc.length; i++) {
        if(cc[i].checked) { n++; break; }
      }
      if(n>0) {
        alert("devi selezionare almeno un radio");
        return false;
      } else {
       return true;
      }
     }
    </script>
    
    
    
    <body bgproperties="fixed">
    <%
    Response.Write "
     Benvenuto : " & Session("UserName") & " [/b]."
    Response.Write "
    Il codice  è  " & Session("Clearance") & "."
    if Request.ServerVariables("HTTP_REFERER") <>"" then
    response.write "
    Torna Indietro</br>"
    end if
    Response.Write "Uscita"
    %>
    <%
    cat2 = request.form("categ")
    uoat = request.form("uoat")
    
    'Stringa per la connessione
    'cString = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("./area_protetta/mdb/ife.mdb")
    cString=Application("CNN")
    'set connession to database 
    Set objConn=Server.CreateObject("ADODB.Connection")
    
    'open connession to database
    objConn.Open cstring
    
    'xxxxxxxx presentazione dati xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    Set rs = Server.CreateObject("ADODB.Recordset")
    
    nometabella="corsi"  ' inserisci qui il nome della tabella da vedere
    
    sql = "SELECT  * from "&nometabella&" where id_anz="&cat2&" AND id_ruo="&uoat&" AND vis= -1"
    'response.write sql:response.end
    'apro il rs
    rs.Open sql, objConn, 3, 3 'cursore dinamico
    
    %>
    
    <form name="form1" method="post" action="Formprecorso.asp" >
      <%
    	
    	if rs.eof then
    %>
      
    <p align="center"><font color="#FF0000" face="Verdana" size="6">Nessun Dato disponibile.</font></p>
      <%
    	else
    	
    %>
      
    
      <table align="center" width="400" border="1" bordercolor="#ff0000">
        <tr> 
          <td colspan="5" align="center" bgcolor="#FF0000"><font color="#00FFFF" size="3" face="Verdana">ATTENZIONE 
            SELEZIONATE SOLO UN CORSO</font></td>
        </tr>
        <tr> 
          <td width="40%" align="center"><font face="Verdana" size="3" color="#0000FF">Corso</font></td>
          <td width="50%" align="center"><font face="Verdana" size="3" color="#0000FF">Ruolo</font></td>
          <td width="10%" align="CENTER"><font face="Verdana" size="3" color="#0000FF">Anzianita</font></td>
    	   <td width="10%" align="CENTER"><font face="Verdana" size="3" color="#0000FF">Edizione</font></td>
          <td width="10%" align="CENTER"><font color="#0000FF" size="3" face="Verdana">Sel</font></td>
        </tr>
        <%
    	while not rs.EOF
    	%>
        
        <tr> 
          <td align="center"><font face="Verdana" size="3" color="#0000FF"><%=Trim(rs.fields("corso"))%></font></td>
          <td align="center"><font face="Verdana" size="3" color="#0000FF"><%=rs.fields("ruolo")%></font></td>
          <td align="center"><font face="Verdana" size="3" color="#0000FF"><%=rs.fields("anzianita")%></font></td>
    	  <td align="center">
            <font face="Verdana, Arial, Helvetica, sans-serif"><font face="Arial, Helvetica, sans-serif">
    			<select name="edizioni">
              <option value=""selected>Seleziona</option>
              <%
    Set rs1 = Server.CreateObject("ADODB.Recordset")
    
    sql2 = "select * from edizioni where corso = '"& rs.fields("corso") &"' and vis = -1" 
    
    rs1.open sql2, objconn
    if not rs1.eof then 
    do until rs1.eof 
    %>
              <option value="<%=rs1("edizioni")%>"><%= rs1("edizioni")%></option>
              <%
    rs1.movenext 
    loop
    end if 
    
    rs1.close 
    %>
              
            </select></font></font>
            </td>
          <td align="center"><font face="Verdana" size="3" color="#0000FF"> 
            <input type="radio" name="radio<%=rs("id")%>" oncheck="controlla('radio')">
            </font></td>
        </tr>
        <%
    	rs.MoveNext
    	wend
    	%>
        
        <tr> 
          <td colspan="5" align="center" bgcolor="#FF0000"><font face="Verdana" size="3" color="#0000FF"> 
                  <input type="submit" name="Submit" value="Invia">
            </font></a></font>[/b]</td>
        </tr>
        <tr> 
          <td colspan="5" align="center" bgcolor="#FF0000"><font face="Verdana" size="3" color="#0000FF">Indietro</font></td>
        </tr>
      </table>	
    
    </form>
    <%
    	end if
    	rs.close
    	set rs=nothing
    	set rs1=nothing
    	objConn.close
    	set objConn=nothing
    
    
    %>
    </body>
    </html>

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    269
    ciao quello che vorrei fare è :
    estraggo dei dati da un db , creo una tabella , per ogni record estratto (corsi ) ho una select delle edizioni e un radio button,
    vorrei che un utente possa selezionare solo 1 corso quindi solo un radio e che dopo avere scelto una sessione posti i dati ad un altra pagina .
    fino ad adesso sono riuscito a d estrarre i dati ,non riesco a fare il controllo sul radio ( l'utente può selezionare anche due corsi) e quindi i dati che vengono postati alla pagina successiva sono errati.
    in pratica faccio tre form una di seguito all'altra .se vuoi posto i tre file .
    è una cosa complessa per me
    grazie

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Se il controllo lo vuoi fare in javascript, il forum adatto p quello di scriptin.
    Se vuoi farlo in ASP puoi continuare qui.
    Quale tipo di controllo scegli? Considera anche che i js potrebbero essere disabilitati, mentre il controllo lato server è sempre valido.

    Roby

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    269
    preferisco asp
    anche perchè in javascript ho provato ma non funziona
    grazie

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Non funziona forse perché hai sbagliato...
    Recupera i name dei vari radio button e verifica QUANTI sono quelli non vuoti.
    Se sono maggiori di uno vuol dire che ha selezionato più di un valore.

    roby

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    269
    in realtà il problema è :
    prima pagina : utente.asp
    utente seleziona "anzianita"
    e di conseguenza viene estratto il tipo di utente

    questi dati vengono postati a una pagina detta corsi.asp
    dove sono quindi estratti i corsi per quel tipo di utente e
    tramite una select le sessioni(date) per ogni corso.

    a questo punto l'utente deve selezionare 1 radio e vorrei che i dati vengano postati a una terza pagina detta : pre_iscrizione.asp
    questa riceve i dati e su questa l'utente deve inserire nome e cognome del partecipante e confermare la partecipazione.
    i dati ,finalmente, vengono inseriti in una tabella detta iscritti.
    e fine della procedura.

    mi puoi aiutare ?

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    te l'ho detto. In "pre_iscrizione.asp" devi verificare QUANTI corsi/sessioni ha selezionato.

    Roby

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    269
    come faccio ? o meglio questa è la pagina pre_iscrizione.asp
    e più in basso c'è la precedente
    codice:
    <%
    a=request.form("radio"& rs("id"))
    	'response.write (a) & "check"& rs("id") & "
    "
        
    	if a= "on" then
    	
    edizione = Request.Form("edizione")
    ruolo = request.form ("ruolo")
    anzianita = request.form ("anzianita")
    corso = request.form ("corso")
    
    	'response.write  & edizioni & 
    CNN=Application("CNN")
    	set rs=Server.CreateObject("ADODB.RecordSet")
    	set conn=Server.CreateObject("ADODB.Connection")
    	conn.open CNN,"",""
    	qry="SELECT * FROM corsi where corso = '"& corso & "' ;"
    	rs.Open qry,conn
    	if rs.eof then
    
    %>
    
    
    <font size="4" color="#FF0000">Nessun record disponibile.</font>
      <%
    else
    %>
     <font face="Verdana, Arial, Helvetica, sans-serif"> </font> 
    <form name="info" method="post" action="iscrizione_exe.asp">
    <input type="hidden" name="data_ins" value="<%=DateAdd("yyyy", 0, Date)%>">
    <input type="hidden" name="iper" value="<% Response.Write "" & Session("Clearance") & "" %>">
      <table width="86%" height="70%" border="1" align="left" cellpadding="0" cellspacing="0">
        <tr bordercolor="#FF0000" > 
          <td height="23%" colspan="6" bgcolor="#FF0000"> <div align="center"> 
              <h3><font face="Verdana, Arial, Helvetica, sans-serif"><font color="#FF0000"></font><font face="Verdana, Arial, Helvetica, sans-serif"><font color="#00FFFF" face="Verdana, Arial, Helvetica, sans-serif">I 
                CAMPI CONTRASSEGNATI CON * SONO OBBLIGATORI </font></font> 
                </font></h3>
            </div></td>
        </tr>
        <tr bordercolor="#FF0000"> 
          <td width="11%" height="23%"> <p align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif">Ruolo</font></p></td>
          <td width="20%"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"><%=rs.fields("ruolo")%></font></div></td>
          <td width="9%"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif">Anzianita</font></div></td>
          <td width="17%"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"><%=rs.fields("anzianita") %> </font></div></td>
          <td width="13%"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif">Corso</font></div></td>
          <td width="25%"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"> 
              <%=rs.fields("corso") %> </font></div></td>
        </tr>
        <tr bordercolor="#FF0000"> 
          <td height="28%" bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif">Nome</font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"> 
              <input name="nome" type="text"  size="15" onBlur="number30('nome')">
              * </font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif">Cognome</font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"> 
              <input name="cognome" type="text" size="15" onBlur="number30('cognome')">
              * </font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif">Settore</font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"> 
              <select name="settore">
                <option value=""selected>Seleziona</option>
                <option value="PGC">PGC</option>
                <option value="EM">EM</option>
                <option value="PF">PF</option>
                <option value="TEX">TEX</option>
                <option value="baz">BAZ</option>
                <option value="">COGE</option>
                <option value="sas">SAS</option>
                <option value="casse">CASSE</option>
                <option value="servizi">Altri Servizi</option>
              </select>
              * </font></div></td>
        </tr>
        <tr bordercolor="#FF0000"> 
          <td height="68" bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif">Edizione</font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"> 
              <% Response.Write "" & edizione & "" %>
              </font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif">Luogo</font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"> 
              <input name="luogo" type="text" size="15" onBlur="number30('luogo')">
               </font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif">Note</font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"> 
              <input name="note1" type="text" size="20" onBlur="number150('note1')">
              </font></div></td>
        </tr>
        <tr bordercolor="#FF0000"> 
          <td height="23%" bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif">Codice 
              Iper</font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"> 
               
              <% Response.Write "" & Session("Clearance") & "" %>
              </font></div></td>
          <td bgcolor="#FFFFFF"> <p align="center"></p></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"></font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"><font color="#0000FF" face="Verdana, Arial, Helvetica, sans-serif"></font></div></td>
          <td bgcolor="#FFFFFF"> <div align="center"></div></td>
        </tr>
        <tr bordercolor="#FF0000" bgcolor="#FF0000"> 
          <td height="23%" colspan="6" bgcolor="#FF0000"> <div align="center"> 
              <h1><font face="Verdana, Arial, Helvetica, sans-serif"><a href=javascript:procedi('iscrizione_exe.asp?visitato=true')><font color="#00FFFF">INVIA</font></a><font color="#00FFFF"> 
                </font></font></h1>
            </div></td>
        </tr>
      </table>
    </form>
    <h3><font face="Verdana, Arial, Helvetica, sans-serif"> 
      <%
    end if
    rs.movenext
    
    wend
    
    conn.close 
    set conn = nothing 
    
    
    %>
      </body>
    </html>
    e questa è la pagina precedente cioè corsi.asp
    dove seleziono il corso e la sessione
    codice:
    <%
    cat2 = request.form("categ")
    uoat = request.form("uoat")
    
    'Stringa per la connessione
    'cString = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("./area_protetta/mdb/ife.mdb")
    cString=Application("CNN")
    'set connession to database 
    Set objConn=Server.CreateObject("ADODB.Connection")
    
    'open connession to database
    objConn.Open cstring
    
    'xxxxxxxx presentazione dati xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    Set rs = Server.CreateObject("ADODB.Recordset")
    
    nometabella="corsi"  ' inserisci qui il nome della tabella da vedere
    
    sql = "SELECT  * from "&nometabella&" where id_anz="&cat2&" AND id_ruo="&uoat&" AND vis= -1"
    'response.write sql:response.end
    'apro il rs
    rs.Open sql, objConn, 3, 3 'cursore dinamico
    
    %>
    
    <form name="form1" method="post" action="pre_iscrizione.asp" >
      <%
    	
    	if rs.eof then
    %>
      
    <p align="center"><font color="#FF0000" face="Verdana" size="6">Nessun Dato disponibile.</font></p>
      <%
    	else
    	
    %>
      
    
      <table align="center" width="400" border="1" bordercolor="#ff0000">
        <tr> 
          <td colspan="5" align="center" bgcolor="#FF0000"><font color="#00FFFF" size="3" face="Verdana">ATTENZIONE 
            SELEZIONATE SOLO UN CORSO</font></td>
        </tr>
        <tr> 
          <td width="40%" align="center"><font face="Verdana" size="3" color="#0000FF">Corso</font></td>
          <td width="50%" align="center"><font face="Verdana" size="3" color="#0000FF">Ruolo</font></td>
          <td width="10%" align="CENTER"><font face="Verdana" size="3" color="#0000FF">Anzianita</font></td>
    	   <td width="10%" align="CENTER"><font face="Verdana" size="3" color="#0000FF">Edizione</font></td>
          <td width="10%" align="CENTER"><font color="#0000FF" size="3" face="Verdana">Sel</font></td>
        </tr>
        <%
    	while not rs.EOF
    	%>
        
        <tr> 
          <td align="center"><font face="Verdana" size="3" color="#0000FF"><%=Trim(rs.fields("corso"))%></font></td>
          <td align="center"><font face="Verdana" size="3" color="#0000FF"><%=rs.fields("ruolo")%></font></td>
          <td align="center"><font face="Verdana" size="3" color="#0000FF"><%=rs.fields("anzianita")%></font></td>
    	  <td align="center">
            <font face="Verdana, Arial, Helvetica, sans-serif"><font face="Arial, Helvetica, sans-serif">
    			<select name="edizione">
              <option value=""selected>Seleziona</option>
              <%
    Set rs1 = Server.CreateObject("ADODB.Recordset")
    
    sql2 = "select * from edizioni where corso = '"& rs.fields("corso") &"' and vis = -1" 
    
    rs1.open sql2, objconn
    if not rs1.eof then 
    do until rs1.eof 
    %>
              <option value="<%=rs1("edizioni")%>"><%= rs1("edizioni")%></option>
              <%
    rs1.movenext 
    loop
    end if 
    'rs1.close 
    %>
              
            </select></font></font>
            </td>
          <td align="center"><font face="Verdana" size="3" color="#0000FF"> 
            <input type="radio" name="radio<%=rs("id")%>">
            </font></td>
        </tr>
        <%
    	rs.MoveNext
    	wend
    	%>
        
        <tr> 
          <td colspan="5" align="center" bgcolor="#FF0000"><font face="Verdana" size="3" color="#0000FF"> 
                  <input type="submit" name="Submit" value="Invia">
            </font></a></font>[/b]</td>
        </tr>
        <tr> 
          <td colspan="5" align="center" bgcolor="#FF0000"><font face="Verdana" size="3" color="#0000FF">Indietro</font></td>
        </tr>
      </table>	
    
    </form>
    <%
    	end if
    	rs.close
    	set rs=nothing
    	set rs1=nothing
    	objConn.close
    	set objConn=nothing
    
    
    %>
    </body>
    </html>

  10. #10
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Per le edizioni non c'è problema perché sono select con option e quindi ne può selezionare una sola.
    Per i radio è la stessa cosa a dire la verità...
    Non capisco il problema.

    Roby

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.