Accedi per seguire   
Seguaci 0
Enrico TV

Sondaggio Multiplo Su Blog

7 messaggi in questa discussione

Ciao a tutti, ogni tanto appaio pure io...

Ho aperto un Blog ed ora ho dovrò andar a modificare i sondaggi predefiniti perchè ho questa esigenza:

Data una domanda PRIMA do queste possibilità di risposta:

  • 1
  • 2
  • 3
  • 4

Data una SECONDA domanda do queste possibilità di risposta:

  • A
  • B

Se una persona alla PRIMA risponde 3 o 4 nulla non succede niente e si chiude li il sondaggio, stessa cosa se risponde alla SECONDA con "A" mentre se risponde 1 o 2 assieme a "B" allora si deve aprire una finestra o meglio ancora sulla stessa pagina compaiono sotto ai sondaggi 2 caselle dove la persona può inserire due dati diversi (nome e mail) che poi mi verranno recapitati ad un mio indirizzo mail (per ovviare a servizi di database).

Quindi in fine la finestra o meglio le due caselle si devono aprire solo se uno risponde con questi 2 casi: 1 + B oppure 2 + B

Su Blogger ho visto che accetta elementi HTML/JavaScript quindi immagino che il codice debba essere in JavaScript...

Chi ha qualche idea illuminante???

Grazie a tutti in anticipo!!

Enrico

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Ho sviluppato un esempio, però ti dico è il mio primo script in js perciò sono certo che si può fare di meglio:

<html>
<head>
<title>input</title>
<script type="text/javascript">

	function check()
	{
			var radioA1 = document.formRadio.aaa[0].checked;
			var radioA2 = document.formRadio.aaa[1].checked;
			var radioB2 = document.formRadio.bbb[1].checked;

			if(radioA1 == true && radioB2 == true || radioA2 == true && radioB2 == true)
			{
					document.write('<h2>Completa il form</h2>')
					document.write('<form method="post" action="">')
					document.write('nome <input type="text" name="nome" /><br />')
					document.write('email <input type="text" name="email" /><br />')
					document.write('<input type="button" name="invia" value="invia" /><br />')
					document.write('</form>')
			}
			else
			{
					document.write("<h2>Grazie per aver partecipato</h2>")
			}
	}

</script>
</head>
<body>

<form name="formRadio">
<input type="radio" name="aaa" value="1"/> 1<br />
<input type="radio" name="aaa" value="2"/> 2<br />
<input type="radio" name="aaa" value="3"/> 3<br />
<input type="radio" name="aaa" value="4"/> 4<br />
<br />

<input type="radio" name="bbb" value="A"/> A<br />
<input type="radio" name="bbb" value="B"/> B<br />
<br />

<input type="button" value="check" onClick="check()" />
</form>

</body>
</html>

Provalo se ti va, in attesa che qualcun altro intervenga. Ciao :)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Hey Cereal, Grazie!!

Ci dev'essere qualche inghippo però. Alla combinazione di risposte non si apre la finestra o casella per immettere i dati.

Ho provato a guardar io e provar qualcosa ma non ne vengo fuori....

Idee?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Rettifico Cereal, scusami.

Funziona, è che avevo i contenuti bloccati su ie mentre su firefox va bene, però vorrei sapere cosa devo aggiungere e dove per far si che quei due dati, nome e mail, mi vengano inviati a me all'indirizzo che scriverò nello script

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Rettifico Cereal, scusami.

Funziona, è che avevo i contenuti bloccati su ie mentre su firefox va bene, però vorrei sapere cosa devo aggiungere e dove per far si che quei due dati, nome e mail, mi vengano inviati a me all'indirizzo che scriverò nello script

Quello poi dovrai farlo tramite uno script in PHP, lo Javascript non permette di inviare email di suo...

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

È vero ciò che dice Spiug, dovresti usare un linguaggio lato server, ma data la tua premessa forse non puoi, perciò nell'action del form per l'invio di nome e email puoi scrivere il comando mailto:tuo_indirizzo@diposta.tld, per ottenere:

<html>
<head>
<title>input</title>
<script type="text/javascript">

	function check()
	{
			var radioA1 = document.formRadio.aaa[0].checked;
			var radioA2 = document.formRadio.aaa[1].checked;
			var radioB2 = document.formRadio.bbb[1].checked;

			if(radioA1 == true && radioB2 == true || radioA2 == true && radioB2 == true)
			{
					document.write('<h2>Completa il form</h2>')
					document.write('<form method="post" action="mailto:tuo_indirizzo@diposta.tld">')
					document.write('nome <input type="text" name="nome" /><br />')
					document.write('email <input type="text" name="email" /><br />')
					document.write('<input type="button" name="invia" value="invia" /><br />')
					document.write('</form>')
			}
			else
			{
					document.write("<h2>Grazie per aver partecipato</h2>")
			}
	}

</script>
</head>
<body>

<form name="formRadio">
<input type="radio" name="aaa" value="1"/> 1<br />
<input type="radio" name="aaa" value="2"/> 2<br />
<input type="radio" name="aaa" value="3"/> 3<br />
<input type="radio" name="aaa" value="4"/> 4<br />
<br />

<input type="radio" name="bbb" value="A"/> A<br />
<input type="radio" name="bbb" value="B"/> B<br />
<br />

<input type="button" value="check" onClick="check()" />
</form>

</body>
</html>

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Rettifico Cereal, scusami.

Funziona, è che avevo i contenuti bloccati su ie mentre su firefox va bene, però vorrei sapere cosa devo aggiungere e dove per far si che quei due dati, nome e mail, mi vengano inviati a me all'indirizzo che scriverò nello script

Quello poi dovrai farlo tramite uno script in PHP, lo Javascript non permette di inviare email di suo...

Anch'io lo credevo però ho trovato questo tool per i mailform: http://www.wmtools.it/demoservizi.php?servizio=formtomail

E poi pensavo pure che far passare dei dati da una parte all'altra ma ho visto che si può con tre tecniche diverse:

  • Passare i valori nella query string e poi elaborali tramite le funzioni delle stringhe
  • Utilizzare un cookie
  • Utilizzare un frame nascosto (di grandezza nulla) e mantenere i valori in quel frame

In tutti e tre i casi la lunghezza dei dati che puoi trasmettere da una parte all'altra è relativamente limitato ma a me è più che sufficiente...

Ora però dovrei riordinare il tutto, qualche idea?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

Devi essere un utente registrato per partecipare

Crea un account

Iscriviti per un nuovo account nella nostra community. È facile!


Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.


Accedi Ora
Accedi per seguire   
Seguaci 0