reconnaitre une valeur d'un glisser deposer

le loup solitaire
Invité n'ayant pas de compte PHPfrance

30 mars 2016, 09:31

bonjour,

je me penche sur un problème en ce moment, je voudrai que quand je dépose la réponse(dragndrop) sur l'emplacement prévu qui est en dessous de l' image dire que la réponse est bonne ou pas, dans les deux cas donné le corrigé avec les bonne valeurs....
<?php
  //déclaration des différente options du dragndrop
$drag= array(
				1 => 'po', 
				2 => 'peau', 
				3 =>'so',
				4 => 'sau', 
				5 => 'seau', 
				6 => 'to',
				7 => 'teau', 
				8 => 'cho',
				9 => 'chau', 
				10 => 'vau'		
					);

 	foreach($drag as $key => $drags) {
	
	
  
    echo '<p style="background-color:rgba(246, 168, 192, 0.3);padding:1% 4%;display:inline-block;margin:20px;text-align:center;" id="'.$key.'" ondrop="drop(event)" ondragover="allowDrop(event)" draggable="true" ondragstart="drag(event)">'. $drags.'</p>';
	
	}


function displaySelectReponse( $choix ){
	
	
	[color=#FF0000]
	je bloque sur la fonction........(je suis débutant)[/color]
	
	
	

}

	function displayReponse($choix){

			global $errors, $reponses;
			
	$mot = $reponses[$choix]['mot']['image'];

			$reponse_class = 'ok';
			$resultat = '';

	if( array_key_exists( $choix, $errors) ){
			$reponse_class = 'error';
			$resultat = " => ".$reponses[$choix]['reponse'];
						}

			$reponse = '<li class="' . $reponse_class . '">';
			$reponse .= '<span style="font-size:1.3em;" class="reponse">' . htmlspecialchars($_POST[$choix]) . '</span>
						<span style="margin-left:1%;font-size:1.3em;"">' . $mot.'</span>';
			$reponse .= ' <span style="color:red;font-size:1.3em;margin-left:5%;"" class="resultat">'. $resultat . '</span> ';

		$reponse .= '</li>';
		return $reponse;
			
					}

		$form_ok = false; 

		$reponses = array(
		'chx_0' => array('mot' => 'une', 'reponse' => 'douche','image'=>'img/douche.gif'),
		'chx_1' => array('mot' => 'une', 'reponse' => 'poubelle','image'=>'img/poubelle.gif'),
		'chx_2' => array('mot' =>'une', 'reponse' => 'souris','image'=>'img/souris.gif'),
		'chx_3' => array('mot' => 'une', 'reponse' => 'soupe','image'=>'img/soupe.gif'),
		'chx_4' => array('mot' => 'un', 'reponse' => 'couteau','image'=>'img/couteau.gif'),
		'chx_5' => array('mot' => 'un', 'reponse' => 'tournevis','image'=>'img/tournevis.gif'),
		'chx_6' => array('mot' => 'un', 'reponse' => 'journal','image'=>'img/journal.gif'),
		'chx_7' => array('mot' => 'une', 'reponse' => 'carre-rouge','image'=>'img/carré-rouge.gif'),
		'chx_8' => array('mot' => 'un', 'reponse' => 'journal','image'=>'img/journal.gif'),
		'chx_9' => array('mot' => 'une', 'reponse' => 'carre-rouge','image'=>'img/carré-rouge.gif'),			
					);

	if ( isset($_POST['correction']) && $_POST['correction'] === 'correction') {
		$empty = false;
		foreach ($reponses as $key => $value) {
					 
			if( empty($_POST[$key])){
					$empty = true;
							}
						}

			if( $empty ){ 
				$msg = '<p>Veuillez cochez toutes les cases !</p>';
				echo $msg;
			}else{
				$form_ok = true; 

				$errors = array();
			
				foreach ($reponses as $key => $value) {
								
			if( $_POST[$key] == $value['reponse'] ){
				$errors[$key] = htmlspecialchars($_POST[$key]);
								}
}
					}
					
	}
					?>
            <?php
					if( ! $form_ok )
					{ ?>
            <form action="" method="POST" />
            
            <?php
	
				$images = array(
							
		'0' =>array ('image' =>'img/douche.gif'),
		'1' =>array ('image' =>'img/poubelle.gif'),
		'3' =>array ('image' =>'img/souris.gif'),
		'4' =>array ('image' =>'img/soupe.gif'),
		'5' =>array ('image' =>'img/couteau.gif'),
		'6' =>array ('image' =>'img/tournevis.gif'),
		'7' =>array ('image' =>'img/journal.gif'),
		'8' =>array ('image' =>'img/rouge.gif'),
		'9' =>array ('image' =>'img/journal.gif'),
		'10' =>array ('image' =>'img/rouge.gif')
								
								
				);
							
											
	foreach($images as $image) {
				echo"<article class='content_img' ondrop='drop(event)' ondragover='allowDrop(event)'>";
					echo"<figure>";	
		
				echo "<img src='$image[image]' width='75' height='75' alt='' />";	

	foreach($reponses as $choix => $reponse) {
		
			echo displaySelectReponse($choix);
		
	}								    
			echo"</figure><p>";	
			echo"</p></article>";
									
	
	}				
										?>
            <input class="correction_center" type="submit" name="correction" value="correction"/>
            </form>
            <?php } else {?>
            <p style="text-align:center;padding:4% 0 0 0;font-size:1.6em;font-weight:bold;display:block;" >Corrigé de l'exercice :</p>
            <div class="blc_reponses">
              <ol style="text-align:left;" class="reponses">
                <?php foreach ($reponses as $choix => $value) {
								
								echo displayReponse($choix);
}?>
              </ol>
              <h2 style="display:inline-block;">Bonnes réponses :</h2>
              <p><?php echo count($reponses) - count($errors); ?> / <?php echo count($reponses); ?></p>
            </div>
            <div class="main_sec" style="text-align:center;margin-left:-10px;"> <span><a href="exo_ou_1.php">REFAIRE L'EXERCICE</a></span> <span><a href="exo_ou_2.php">EXERCICE SUIVANT</a></span> </div>
            <?php } ?>