Bonjour,
j'aimerai écrire un ordre sql qui fait des calculs mais je n'y arrive pas. En effet
voilà le principe.
$Table="matable";
mes champs:nom,prenom,date_naissance,classe.
date_naissance est sous la forme "2007-03-15"
Je souhaite avoir le nom,prenom et classe des élèves dont l'âge se situe entre 18 et 20 ans.
J'ai essayé ceci sans succès:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
<?php
$Table="matable";
$date_actuel=date("Y,m,d");
$age1=18;
$age2=20;
$sql="Select nom,prenom,classe,date_naissance,
(YEAR($date_actuel)-YEAR(date_naissance)) - (RIGHT($date_actuel,5)<RIGHT(date_naissance,5))  AS age  FROM $Table where age between $age1 and $age2";
$result=mysql_query($sql);
 
while($leresultat=mysql_fech_array($result)){
       $lenom=$leresultat['nom'];
       $leprenom=$leresultat['prenom'];
       $laclasse=$leresultat['classe'];
 
      echo $lenom."-".$leprenom."-".$laclasse."<br>";
}
?>
L'erreur exacte de cet ordre est:
Warning : mysql_fetch_array():supplied argument is not valid MYSQL result resource in ...........on line 351

Je vous remercie d'avance de votre aide.