- Home
- Categorie
- Coding e Sistemistica
- Coding
- Questionario
-
Questionario
Ciao a tutti, ho tra le mani uno script, quello classico che filtra regioni,città e paesi, stavo provando a riutilizzarlo, rendendolo una specie di questionario, una soluzione l'avevo trovata ma era diventata lunga, grezza e complicata, spero possiate aiutarmi:
ho queste tabelle nel database con i seguenti campi:
tabella: questionario_nome
campo: id
campo: nomela prima select popola questi nomi contenuti nel campo "nome"
-giovanni
-marco
-stefaniatabella: questionario_sesso
campo: id
campo: sessola seconda select popola i due sessi contenuti nel campo "sesso"
-maschio
-femminatabella: questionario_anni
campo: id
campo: annila terza select popola gli anni contenuti nel campo "anni"
- 20-30 anni
- 30-40 anni
- 40-50 anni
tabella: questionario_risultato
campo: id
campo: id_nome
campo: id_sesso
campo: id_anni
campo: risultatola quarta select dovrebbe popolare un risultato in base alle selezioni precedenti.
questo è lo script che sto utilizzando
<?php require 'dbconfig.php'; $conn = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD) or die; mysql_select_db(DB_NAME) or die; $pid = (int)$_REQUEST['id']; $tb = mysql_real_escape_string($_REQUEST['table'], $conn); switch($tb) { case 'questionario_nome': $sql="SELECT id, nome FROM `$tb` ORDER BY nome"; break; case 'questionario_sesso': $sql="SELECT id, sesso FROM `$tb` ORDER BY sesso"; break; case 'questionario_anni': $sql="SELECT id, anni FROM `$tb` ORDER BY anni"; break; case 'questionario_risultato': $sql="SELECT id, risultato FROM `$tb` WHERE id_anni=$pid ORDER BY risultato"; break; } $out="$tb;"; if($result = mysql_query($sql, $conn)) { while ($row = mysql_fetch_row($result)) { $out .= $row[0] . '|' . $row[1] . ';'; } } echo rtrim($out, ';'); ?>
-
Ciao cla83,
ma la domanda qual'è?
-
Ciao Thedarkita,
grazie per la risposta,
dunque come riesco ad ottenere una cosa del genere?
per esempio se seleziono:- marco (che corrisponde all'id 2 del campo nome)
- maschio (che corrisponde all'id 1 del campo sesso)
- 20-30 anni (che corrisponde all' 1 del campo anni)
- risultato 4 (vorrei ottenere questo risultato)
se invece seleziono
- 30-40 anni (che corrisponde all'id 2 del campo anni)
- risultato 5 (vorrei ottenere questo risultato)
-
Ho risolto in un altro modo più semplice, grazie comunque per l'aiuto

-
Ciao a tutti,
riuppo questo post per avere un Vs aiuto,
ho ottenuto il questionario precedentemente postato, realizzando una sorta di motore di ricerca, che mi filtra il risultato specifico dopo aver selezionato tutte le risposte tramite le select.Quello che vorrei chiedervi è:
Se ho 5 domande ed ognuna ha 3 scelte diverse e il risultato dovrebbe essere sempre differente, allora faccio questo calcolo 3x3x3x3x3= 246.
Devo realizzare 246 combinazioni possibili nel database?
scommetto che sto dicendo una baggianata vero?
Grazie a tutti in anticipo
-
Un piccolo aiuto?
