Problème Requête avec les conditions Where

hajar2809 Messages postés 12 Date d'inscription dimanche 4 février 2007 Statut Membre Dernière intervention 23 décembre 2013 - 18 juil. 2008 à 11:22
phil2a Messages postés 95 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 22 décembre 2012 - 23 juil. 2008 à 08:50
Bonjour,
Pour réaliser mon projet de stage, je dois créer une connexion entre une base de données access et PHP.Tout se passe bien tant que je ne mets pas de conditions WHERE dans ma requête qui appelle des données d'une table ESD dans ma base de données.Je pense que je me suis  trompée dans la syntaxe (Après tout, je n'ai pas encore étudié le PHP mais mon projet de stage m'oblige à l'utiliser ^^)
Voilà mon code PHP:

 <html>
<head>
       <title>Title here!</title>
</head>

 <?php
 //connexion à une base de données ACCESS
$bd="DsnEsd"; // identifiant DSN
$user="root"; // login
$password=""; // password
$cnx = odbc_connect( $bd , $user, $password );
$class= $_POST['class'] ;
$Area= $_POST['Area'] ;
$Division= $_POST['Division'] ;



if($cnx){
$tablelist = odbc_tables($cnx);
while (odbc_fetch_row($tablelist)) //tant que c'est pas la fin de la table
{
 if (odbc_result($tablelist, 3) == "ESD") // Si indicateur TABLE
  echo odbc_result($tablelist, 3); // Affiche nom de la TABLE
}$valeurodbc_exec( $cnx, "SELECT * FROM Esd WHERE CLASS '".$class."' AND PROCESSGROUP = '".$Area."' AND DIVISION = '".$Division."'");
while(odbc_fetch_row($valeur)) //tant que c'est pas la fin de la table
{
   //echo odbc_result( $valeur, 1 );//ici on affiche la valeur du champ1
echo odbc_result( $valeur, 2 );
echo odbc_result( $valeur, 3 );
echo odbc_result( $valeur, 4 );
echo odbc_result( $valeur, 5 );
echo odbc_result( $valeur, 6 );
echo odbc_result( $valeur, 7 );
echo odbc_result( $valeur, 8 );
echo odbc_result( $valeur, 9 );
echo odbc_result( $valeur, 10 );
echo odbc_result( $valeur, 11 );
echo odbc_result( $valeur, 12 );
echo odbc_result( $valeur, 13 );
echo odbc_result( $valeur, 14 );
   echo '

';
  
   }
}
else{
echo "Impossible de se connecter à  la base de données";
}
odbc_close( $cnx); // ferme la connexion
?>

</html>



Et voilà les erreurs que cela m'affiche:
 
Warning: odbc_exec(): SQL error: [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 3., SQL state 07001 in SQLExecDirect in c:\program files\easyphp1-8\www\projet stage2\traitement1.php on line 24

Warning: odbc_fetch_row(): supplied argument is not a valid ODBC result resource in c:\program files\easyphp1-8\www\projet stage2\traitement1.php on line 25

Si quelqu'un peut me montrer les erreurs....Merci d'avance
Programmeuz perdue à Gaia

3 réponses

cs_chapata Messages postés 214 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 9 avril 2010 5
18 juil. 2008 à 11:42
Salut,

le problème pourrait venir de tes variables postées : si elles contiennent des quotes ou double quotes ... mais rien n'est garanti

ChaPaT'
0
hajar2809 Messages postés 12 Date d'inscription dimanche 4 février 2007 Statut Membre Dernière intervention 23 décembre 2013
18 juil. 2008 à 11:47
Est-ce que tu peux expliquer davantage s'il te plait? Si possible avec un exemple...

Programmeuz perdue à Gaia
0
phil2a Messages postés 95 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 22 décembre 2012
23 juil. 2008 à 08:50
à part l'exercice de connexion, quel intérêt peut-il y avoir à attaquer
une base Access avec du php ?
0
Rejoignez-nous