PB requete between , rechercher autour de x

Petit nouveau ! | 2 Messages

23 juin 2012, 10:27

Bonjour,
je post la car je ne sais pas si mon probleme est de lordre de php ou de mysql ..

Voila le cénario , les éleves de la classe peuvent se connécté, une fois connécté
je recupère leur note en math par les session,
ensuite il peut rechercher tous les éleves ayant une note en math de -20 sa note math et +20 sa note de math, ET qui ont aussi eu une note en philo entre -20 sa note de philo et + 20 sa note de philo ;
(je n'ai pas trouvé de fonction qui charcherait dans " un range de note " ou " autour de ")

Donc voila mon code, je pense que la logique est bonne mais il y a des fautes de mise en forme..

Avant je recupere par les session

$note_math_recup et
$note_philo_recup

de l'éleve connécté .



$requete= "SELECT * FROM noteeleve WHERE math between (('$note_math_recup'+'20')
AND ('$note_math_recup'-'20')) AND WHERE philo between (('$note_philo_recup'+'20')
AND ('$note_philo_recup'-'20'))"
;

$resultat= mysql_query($requete) ; ?>

<?php

echo print_r($resultat);


while($res=mysql_fetch_array($resultat) ) { ?>
<?php echo $res['prenom'] ; ?>
<?php } ?>



Si vous pouviez me filer un coup de main pour y voire plus claire..
merci,

jessica

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

23 juin 2012, 22:24

Salut,

Test la requête dans un client SQL (quelqu'il soit, phpmyadmin par exemple). Pour cela utilise des valeurs bidons, le principal c'est de savoir ce que tu dois récupérer).

Puisse que l'on est dans la partie sql, je pense qu'il y a problème dans modélisation de la base. Les notes et matière ne devraient pas être dans la même table.

En SQL les nombres ne sont pas délimité par des apostrophes, seul les chaîne de caractères et les dates le sont.

@+
Il en faut peu pour être heureux ......

ViPHP
xTG
ViPHP | 7331 Messages

23 juin 2012, 22:56