Recupero dati per select form

Paperino78

Utente Attivo
30 Giu 2012
409
0
16
Milano
Buonasera, probabilmente l'argomento che vado a spiegare è stato trattato e discusso mille e mille volte ma non ne esco proprio.
Io ho una tabella con due campi, il campo id messo come chiave primaria valore int(10) e l'altro il campo domanda VARCHAR(100). La tabella quindi ha id 1 e relativa domanda, id2 e domanda, e così via. Ho bisogno che quello che ho scritto in domanda venga preso usando l'id (che ho messo apposta) e messo nel campo select del mio form. Come caspita devo fare? devo usare while, for, mysqli fetch, un array? Da dove parto?

Scusae se l'argomento potrà risultare noioso e discusso mille volte, nel caso mi potete dare una dritta su dove andare a vedere.

Grazie a tutti
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, io non ho capito il problema, non ti basta fare cosi ?
PHP:
$query = "SELECT domanda FROM tabella WHERE id = " . $_POST['id_domanda'];
 

Paperino78

Utente Attivo
30 Giu 2012
409
0
16
Milano
Intato grazie.

Allora per comodità ho diversificato il problema in questo modo. Ho creato una nuova tabella con all'interno tre righe distinte con le 3 domande. Al db faccio estrarre le varie domande e le inserisco nel camp select in modo tale che abbia gia un campo in php e lo possa gestire dopo. Non mi piace molto questo metodo però.
Il problema che invece voglio risolvere è questo, io ho una tabella con due campi, id e domanda, il campo id è autoincrementale, intero, e primario e come valore del campo domanda ho inserito la domanda vera e propria. Ottengo quindi un array di questo tipo
PHP:
Array
(
    [0] => Array
        (
            [id] => 1
            [domanda] => Qual'è il cognome da nubile di mia mamma?
        )

    [1] => Array
        (
            [id] => 2
            [domanda] => Qual'è il cognome della nonna materna?
        )

    [2] => Array
        (
            [id] => 3
            [domanda] => Qual'è la materia scolastica che mi piace di più?
        )

)
Lasciando stare le lettere accentate, che risolverò dopo.
Io adesso dovrei inserire queste domande in un campo select del form facendo in modo che ad ogni valore id corrisponda la relativa domanda. Per estrarre questo array ho fatto così
PHP:
 if($result = $mysqli->query("SELECT * FROM domande2")){
 if ($count = $result->num_rows) {

 	$rows = $result->fetch_all(MYSQLI_ASSOC);
 	
 	foreach ($rows as $row ) {
 		echo $row['domanda'];
 	}
 	echo '<pre>', print_r($rows), '</pre>';
 
 }
 
 }

Come devo fare?
Dovrebbe uscire una cosa del genere
PHP:
echo '<option name="" value="">', print_r ($row->domanda1),'</option>';

Cosa devo fare?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
fai così
PHP:
echo "<select name='domanda'>";
foreach ($rows as $row) {
    echo '<option value="' . $row['id'] . '">"' . $row['domanda'] . '"</option>';
}
echo "</select>";
 

Paperino78

Utente Attivo
30 Giu 2012
409
0
16
Milano
cia criric, ho trovato questo sistema per ottenere ciò che vorrei
PHP:
if($result = $mysqli->query("SELECT * FROM domande2")){
		while ($row = $result->fetch_array())
		{
			echo '<option name="" value="1">', $row[1],'</option>';
		}
	}
in questo caso il database è formato da id1 e domanda 1, id 2 e domanda 2, e così via. Spero vada bene. Ora devo poter prendere questo valore ed inserirlo in una tabella temporanea ed infine in quella definitiva. Hai consigli? in più con questo sistema nel select che ovviamente è unico cambiano solo le domande ma il resto è identico, quindi hanno tutti lo stesso valore qual'ora lo impostassi. C'è modo di avere tre tag option distinti dove ognuno ha la domanda che devo inserire?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
devi fare come ti ho postato sopra, il value deve essere dinamico.
 

Paperino78

Utente Attivo
30 Giu 2012
409
0
16
Milano
Hai ragione, sarà stato l'orario ma non ci avevo pensato.:cool: Adesso che il valore è variabile come posso "prenderlo" per spostarlo in un altra tabella, cioè quella temporanea in attesa della conferma della mail? Basta prendere le stesse variabili e portarle nel mio caso in una query INSERT INTO?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Perchè devi inserirlo in una tabella temporanea?
stai cercando di memorizzare la risposta o di confrontarla con una già presente?
 

Paperino78

Utente Attivo
30 Giu 2012
409
0
16
Milano
Il form l'ho impostato così: compilo il form, invia mail con un link di attivazione ed inserisco tutti i dati raccolti in un db temporaneo, poi alla conferma della mail sposto i dati dalla temporanea alla tabella finale.
Un dubbio che mi viene in mente ora è che se il controllo dei dati doppi lo faccio sulla tabella temporanea e due utenti usano lo stesso username ma attivano il profilo in due tempi diversi mi verranno inseriti due utenti con lo stesso username o la stessa mail. Conviene fare il controllo sulla temporanea?
 

Paperino78

Utente Attivo
30 Giu 2012
409
0
16
Milano
Rieccomi, per informazine sono riiuscito a risolvere il problema così, se può tornare utile a qualcuno. ecco il codice che mi permette di selezionare una domanda con select attingendo dal db:
PHP:
if($result = $mysqli->query("SELECT * FROM question")){
	while ($row = $result->fetch_array())
	{
		echo '<option name="" value="'. $row['id'].'">', $row['domanda'] ,'</option>';
	}
}
Grazie a tutti.
 
Discussioni simili
Autore Titolo Forum Risposte Data
Vale2 Software per Recupero dati Windows e Software 0
S problema con recupero dati tabella mysql PHP 2
D Recupero dati da HDD esterno Hardware 0
L Recupero dati da SSD Windows 10 prof Windows e Software 3
Sergio Unia Recupero dati da una vecchia versione MySql [Risolto] MySQL 4
L Problema con recupero dati in PHP cURL e JAVA con server PHP 1
S [PHP] Recupero più dati da form realizzata ciclo FOR PHP 5
P [PHP] Recupero dati da un array PHP 5
F Recupero dati json Ajax 2
I tabella con ciclo, recupero dati PHP 3
Emix Problema recupero Dati da MYSQL PHP 20
L Recupero dati da tutte le tabelle nel db MySQL 4
Alessio Gebbia [PHP] Recupero dati da un WHILE ! PHP 3
M recupero dati... PHP 1
L Recupero dati form in tabella e invio con ajax. Problemino jQuery 1
felino HDD 2.5'' caduto a terra: possibile recupero dei dati al suo interno Hardware 8
Emix Recupero dati da una tabella e spostarli in un altra PHP 11
C Recupero dati da pagina esterna PHP 5
M recupero dati da db PHP 6
T Problema con form e recupero dati da mysql PHP 17
F errori sul recupero dati mysql e php PHP 3
minatore Recupero dati PHP 47
minatore Recupero dati MySQL 10
T Problema recupero dati da file [era: help script php] PHP 9
Vale2 Recove my files ™ Recupero dati Windows e Software 1
D relazioni 1:n e recupero dati da form PHP 2
R Recupero dati hd esterno Windows e Software 3
O recupero dati da pagina web PHP 1
M Recupero dati Database tramite form richiesta PHP 9
B aiuto con ajax (recupero dati da un db) Javascript 2
M Recupero dati da pagina php PHP 2
E Recupero dati da database PHP 8
I Recupero particolari dati PHP 32
T recupero dati ASP.NET 0
T recupero dati da database ASP.NET 6
W Problema recupero dati database Javascript 2
C recupero dati dal form Javascript 1
C Anomalia Cartteri & recupero dati!!!!! Supporto Mr.Webmaster 0
R Recupero di permalink di un sito che è stato eliminato per errore WordPress 5
T Recupero valori tramite $_GET PHP 4
O Recupero valori da listato Javascript 0
T foreach e fetchAll dove recupero solo l'ultimo record PHP 5
T recupero valori select multipla da android Javascript 3
W Recupero password Classic ASP 16
S [PHP] Recupero nome immagine da Form con input file PHP 3
bubino8 [PHP] Recupero id autoincrement PHP 8
I Recupero accesso pannello di controllo dominio Leggi, Normative e Fisco 2
S [PHP] form con metodo get e recupero id PHP 4
Emix [PHP] Check - Select e recupero variabili PHP 40
bubino8 [PHP] Recupero input senza invio PHP 1

Discussioni simili