Forum Per Webmaster - Tutti Per Uno

Comunicazione Integrata
forum per webmaster Registrazione Regolamento TPU FAQ cerca nel forum contatta lo staff Lo staff di TPU

 vai indietro   Forum Per Webmaster - Tutti Per Uno > Tecnica > WebDesign e Scripting

WebDesign e Scripting Discussioni inerenti la realizzazione di pagine web e script .

Rispondi
 
LinkBack Strumenti della discussione Modalità di visualizzazione
  #1 (permalink)  
Vecchio 13-09-2009, 17.16.00
L'avatar di Ranius
Moderatore Pensieroso
 
Registrato al forum dal: 19-01-2007
ubicazione: Stresa
Messaggi: 1,207
Invia un messaggio tremite MSN a Ranius Invia un messaggio tremite Skype a Ranius
predefinito php controlli input radio

Ciao a tutti, ho creato un piccolo form
  • nome
  • cognome
  • età
  • sesso

Ora, come faccio a dire in php che il radio, maschio o femmina deve essere cliccato prima di poter andare avanti con la registrazione?
Lo so, è stupido ma devo essere onesto come il mio solito sono riuscito a perdermi in un bicchiere d'acqua perché sto entrando in un'idea di controllo completamente fuori da ogni possibile immaginazione, potreste darmi una mano?
__________________


Hotel tre stelle Calabria

When I was a child, I caught a fleeting glimpse Out of the corner of my eye. I turned to look, but it was gone. I cannot put my finger on it now. The child has grown, the dream is gone.
I have become comfortably numb.
Rispondi quotando
  #2 (permalink)  
Vecchio 13-09-2009, 19.11.57
L'avatar di gero
Moderatore Globale Siculo
 
Registrato al forum dal: 19-01-2007
ubicazione: Naro Sicilia
Messaggi: 745
Invia un messaggio tremite ICQ a gero Invia un messaggio tremite Skype a gero
predefinito

da prendere con le pinze:

secondo me devi usare java o meglio ajax
1
2
3
4
__________________
Disiu.it Prodotti Tipici Siciliani


Quando inizierò a capire che sbaglio più di quanto possa immaginare starò meglio.
Bluermes Comunicazione Integrata - SitoPresto - Oleodinamica Sicilia - Canicattì Notizie
Rispondi quotando
  #3 (permalink)  
Vecchio 13-09-2009, 22.11.19
L'avatar di massy
Moderatore Lunatico
 
Registrato al forum dal: 30-01-2007
ubicazione: Pico
Messaggi: 1,339
Invia un messaggio tremite ICQ a massy Invia un messaggio tremite MSN a massy
predefinito

Che fa, installa tomcat solo per validare un radio button?

Lascia perdere java. Proviamo a capire un attimo l'html e vedrai che è più semplice di quanto sembri...

I radio button si usano quando vuoi avere una sola possibilità su una rosa di opzioni.
esempio pratico:
codice HTML:
<form name="pippo"> <input type="radio" name="sesso" value="f" /> <input type="radio" name="sesso" value="m" /> </form>
Nota come abbiamo lo stesso nome e valore differente.

Accedi via javascript al valore con
document.pippo.sesso[n].checked
in cui n è "l'indice" progressivo dei vari input.
document.pippo.sesso è in effetti un array, e ricorda sempre che il primo valore è sempre 0, non 1

Per controllare se *almeno* un valore è checkato devi costruire un ciclo del tipo
codice:
function controllaradio(){ 
    varcontrollo=0 //
    for (i= 0; i< pippo.sesso.length; i++){  // un ciclo for che parte da 0 e si ferma alla lunghezza dell'array
       if (pippo.sesso[i].checked){  // cicla tutti i valori
        varcontrollo= 1;  // quando ne trova almeno 1 checkato imposta la var di prima a 1
       } 
    } 
   if (varcontrollo==0) { //se è 0 vuol dire che nessun valore è checkato
    alert ("hei, tu, dimmi di che sesso sei"); //mostra un messaggio
    return false; //e blocca l'invio del form
   } else {
    return true; //altrimenti lo invia regolarmente
   }
}
che puoi richiamare ad esempio nel onsubmit del form
codice HTML:
<form name="pippo" onsubmit="return controllaradio()" action="" method="post">
Questo son le basi per il controllo js. Che da solo serve a nulla: basta che lo disabiliti e non ho fatto nulla.

Allora è necessario che lo stesso tipo di controllo lo faccia anche in php (o altro linguaggio tu usi lato server), operazione molto più *semplice* e intuitiva.

Se selezioni un valore nella pagina di atterraggio avrai una variabile del tipo:
$_POST['nomeinputradio'] (o $_GET['nomeinputradio'] se il metodo scelto è get).
Se non selezioni nulla non avrai proprio la variabile.

Ti basta quindi un
Codice PHP:
if (!isset($_POST['sesso'])){
    
//fai qualcosa, ad esempio
    
die ("Ehi, ma non ti avevo detto di dirmi di che sesso sei????");

Una volta compreso bene questi punti puoi poi passare a usare controlli complessi e fighettosi in ajax: il mio consiglio come sempre è di capire cosa si sta facendo e non prendere le cose in quanto tali.
__________________
Warning: utente lunatico, permaloso, testardo, polemico e perennemente nervoso:non mi rinfacciate di non avervi avvertito prima, eh!
Su su, corri a pubblicare un Comunicato Stampa , compila un Quiz Patente o leggi qualcosa sulle Automobili o sui Mutui Online.

Ultima modifica di massy : 14-09-2009 a 02.25.48
Rispondi quotando
  #4 (permalink)  
Vecchio 16-09-2009, 11.56.51
L'avatar di Ranius
Moderatore Pensieroso
 
Registrato al forum dal: 19-01-2007
ubicazione: Stresa
Messaggi: 1,207
Invia un messaggio tremite MSN a Ranius Invia un messaggio tremite Skype a Ranius
predefinito

Infatti ho inserito solamente il controllo in php perché se non viene rilevata quella variabile tutto quanto deve essere bloccato, e funziona, ha guardato in giro per la rete e anch'io ho avuto modo di rendermi conto di quello che mi hai spiegato molto bene anche tu, quindi nome uguale valore diverso pensandoci bene sembra quasi un'illusione perché alla fine induce l'utente a fare esattamente quello che vuoi
__________________


Hotel tre stelle Calabria

When I was a child, I caught a fleeting glimpse Out of the corner of my eye. I turned to look, but it was gone. I cannot put my finger on it now. The child has grown, the dream is gone.
I have become comfortably numb.
Rispondi quotando
Rispondi

Segnalibri

Strumenti della discussione
Modalità di visualizzazione

Regole d'invio
Non puoi inserire discussioni
Non puoi inserire repliche
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code is attivo
Le smilies sono attive
Il codice IMG è attivo
il codice HTML è disattivato
Trackbacks are attivo
Pingbacks are attivo
Refbacks are attivo




Tutti gli orari sono GMT +2. Attualmente sono le 10.48.20.


Powered by vBulletin versione 3.8.3
Copyright ©: 2000 - 2010, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.2.0 RC7
Traduzione italiana Team: vBulletin-italia.it
Grafica by Ludus