Estrarre voce random e verificare se è corretta

JackIlPazzo

Utente Attivo
25 Lug 2014
69
0
6
Salve a tutti,

Sto realizzando una piccola applicazione, diciamo che è più un gioco che una vera e propria applicazione, che permette di vedere se l'utente ha indovinato o meno la coniugazione di un certo verbo.
Ho pensato di estrarre una voce random dal database (per voce intendo verbo), da qui mostro tre select una per la coniugazione il tempo, il modo e la persona.
Vorrei però il vostro aiuto a realizzare questa modalità di estrazione della voce dalla tabella verbi.

Esempio:

VOCE ESTRATTA: sente
RISPOSTA:

terza coniugazione
terza persona singolare
modo indicativo presente
infinito sentire.

Di conseguenza come faccio a verificare se l'utente ha inserito una risposta corretta o sbagliata? Potreste per favore portarmi un esempio di codice? Ve ne sarei molto grato. Grazie a tutti :)
 
Premetto che non sono un prof d'italiano:).
Non capisco a cosa servono 3 select se il verbo "random" è uno, alla corrispondenza del verbo ti estrai le caratteristiche...
Non so come hai strutturato il db, comunque il tuo sistema mi sembra laborioso... potresti semplificare.
Poi la correttezza come deve essere verificata?
 
Ciao,

Allora io attualmente ho risolto in parte salvando tutti i verbi in un array. Da questo poi estraggo un indice casuale che contiene il verbo e tutte le sue caratteristiche. A questo punto vorrei solo sapere come posso comparare il valore di una determinata select con una variabile.
Grazie :)
 
ciao
credo di aver capito cosa vuoi fare, ma secondo me hai un grosso problema, php non riesce a fare l'analisi grammaticale (php come tutti i linguaggi è gnurant)
devi avere qualcosa nel db che determina la voce (verbo) e un collegamento tra la voce e le sue caratteristiche
se hai pazienza provo a farti un esempio semplice
 
ciao
ecco uno schema semplificato, ho usato degli array per simulare il db
provalo e sappimi dire (a parte i verbi) se era quello che volevi fare
PHP:
<?php
if(isset($_POST['invia'])){
	//leggo i valori dal form
	$gen_scelto=$_POST['genere'];
	$num_scelto=$_POST['numero'];
	$gen_vero=$_POST['gen_vero'];
	$num_vero=$_POST['num_vero'];
	//e ora inizio i controlli
	if($gen_scelto==$gen_vero && $num_scelto==$num_vero){
		echo "bravo hai indovinato genere e numero<br>";
	}elseif($gen_scelto==$gen_vero && $num_scelto!=$num_vero){
		echo "hai indovinato il genere ma non il numero<br>";
	}elseif($gen_scelto!=$gen_vero && $num_scelto==$num_vero){
		echo "hai indovinato il numero ma non il genere<br>";
	}else{
		echo "credo che tu debba studiare di pi&ugrave;<br>";
	}
	echo "<a href=\"".$_SERVER['PHP_SELF']."\">ripeti</a><br>";
}else{
//simulo con degli array la tabella del db
//in pratica una tabella tipo: id|voce|genere|numero
$voce[0]['casa']=array('femminile','singolare');
$voce[1]['case']=array('femminile','plurale');
$voce[2]['tetto']=array('maschile','singolare');
$voce[3]['tetti']=array('maschile','plurale');
$voce[4]['strada']=array('femminile','singolare');
$voce[5]['strade']=array('femminile','plurale');
//estraggo una voce a caso
$est=rand(0,5);
$parola=key($voce[$est]);
echo "cosa è la voce<b> $parola</b>?<br>";
?> 
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
  maschile o femminile 
    <select name="genere" id="genere">
      <option value="femminile">femminile</option>
      <option value="maschile">maschile</option>
    </select><br>
  singolare o plurale 
    <select name="numero" id="numero">
      <option value="singolare">singolare</option>
      <option value="plurare">plurale</option>
    </select><br>
	<!-- uso campi hidden per non stare ad usare le sessioni e il db-->
	<!-- invio cioè anche i parametri della voce estratta a caso -->
    <input name="gen_vero" type="hidden" id="gen_vero" value="<?php echo $voce[$est][$parola][0];?>">
	<input name="num_vero" type="hidden" id="num_vero" value="<?php echo $voce[$est][$parola][1];?>">
    <br>
    <input name="invia" type="submit" id="invia" value="invia">
</form>
<?php
}
?>
 

Discussioni simili