Verification dans un tableaux

Fermé
gamerkilli Messages postés 56 Date d'inscription dimanche 14 octobre 2012 Statut Membre Dernière intervention 12 mars 2017 - 12 mars 2017 à 12:47
jordane45 Messages postés 38167 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 7 mai 2024 - 12 mars 2017 à 16:38
Bonjour,

j'ai un problème, je n'arrive pas à effectuer une vérification de saisie entre un formulaire et des valeurs dans un tableaux .

j'aimerais juste après la saisie de l'utilisateur récupérer grâce a la méthode GET la saisie de l'utilisateur et ensuite la comparer avec chaque saisie de mon tableaux déjà initialisé avec différents nombre afin d'afficher la saisie de l'utilisateur si elle existe dans le tableaux ou sinon afficher qu'elle n'existe pas .

j'ai proceder comme cela :

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        
        <form method="get" action="exo1.php">
            <input type="text" name="chp_rech"> <!-- champ de saisie -->
        </form>
    
    <?php
    // tableau avec les différentes valeurs
    $tab_donnees =array(0,5,10,15,20,25,30,35,40,45,50,55,60,65,70);    
   
if(isset($_GET['chp_rech'])){
       
// parcour du tableau à la recherche de la saisie
    foreach ($tab_donnees as $i){
        
       if ($tab_donnees[$i] = $_GET['chp_rech']){
           
           echo $_GET['chp_rech'].' existe dans le tableaux à la case : ';
       
       }else{
           
           echo "n'existe pas dans le tableaux ..";
        }
    }
}
?>
   </body>
</html>





MERCI d'avance à ceux ou celles qui m'aideront :)

2 réponses

jordane45 Messages postés 38167 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 7 mai 2024 4 657
12 mars 2017 à 12:53
Bonjourles comparaisons se font avec deux ou trois egal == ou ===

Sinon en php il existe une fonction in_array
1
gamerkilli Messages postés 56 Date d'inscription dimanche 14 octobre 2012 Statut Membre Dernière intervention 12 mars 2017
12 mars 2017 à 13:15
oui merci pour l'info je viens de tester le in_array et le problème c'est que le echo me retourne toujours oui pour n’importe qu’elle valeur saisie :

<?php
    // tableau avec les différentes valeurs
    $tab_donnees = array(0,5,10,15,20,25,30,35,40,45,50,55,60,65,70);    
   
  
    if(in_array($$_GET['chp_rech'], $tab_donnees)){
        
        echo 'oui';
    
    }else{
        
        echo 'non';
    }
    
    ?>
0
jordane45 Messages postés 38167 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 7 mai 2024 4 657 > gamerkilli Messages postés 56 Date d'inscription dimanche 14 octobre 2012 Statut Membre Dernière intervention 12 mars 2017
12 mars 2017 à 14:16
Tu as mis deux $$
0
gamerkilli Messages postés 56 Date d'inscription dimanche 14 octobre 2012 Statut Membre Dernière intervention 12 mars 2017
12 mars 2017 à 15:41
Oui merci, une erreur de copier coller , rien à faire sa ne change rien ...
0
jordane45 Messages postés 38167 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 7 mai 2024 4 657
Modifié par jordane45 le 12/03/2017 à 16:38
Essaye ça :
 <?php
 /* Fichier index.php */
 
//affichage des erreurs php si il y en a
error_reporting(E_ALL);
ini_set('display-errors','on');

/**
* Petite fonction de debug
*/
function debug($var,$title=""){
 echo '<br><b>'.$title.'</b><pre>';
 print_r($var);
 echo '</pre><br>';
}

//recuperation PROPRE des variables AVANT de les utiliser
$chp_rech = !empty($_GET['chp_rech']) ? $_GET['chp_rech'] : NULL;


// tableau avec les différentes valeurs
$tab_donnees = array(0,5,10,15,20,25,30,35,40,45,50,55,60,65,70);

if($chp_rech){
//on regarde dans l'array:
  if(in_array($chp_rech, $tab_donnees)){
    $result = "oui";    
  }else{        
    $result = "non"; 
  }
}else{
  $result = "";
} 
  
  
?>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
<form method="get" action="">
 <input type="text" name="chp_rech" value="<?php echo $chp_rech;?>">
 <input type="submit" value="go" name="chercher">
</form>

<div id="affichage">
 <?php
  echo $result;
 ?>
</div>

</body>
</html>

Cordialement, 
Jordane                                                                 
0