Probleme ODBC sur PHP

Xineroks -  
 Xineroks -
Bonjour,

J'ai un soucis ODBC, php me renvoit l'erreur

Warning: odbc_do() [function.odbc-do]: SQL error: [Microsoft][Pilote ODBC Microsoft Access] Trop peu de paramètres. 2 attendu., SQL state 07001 in SQLExecDirect in C:\wamp\www\....


Alors que mon code est :

<?php 
$cnx=odbc_connect('bdd','',''); 
if ($cnx)  
    { 
    $requete="select * from Utilisateurs;"; 
    $jeu =odbc_do($cnx,$requete); 

    while(odbc_fetch_into($jeu,$champ)) 
    { 
    if ($champ[0] <> NULL) 
         
        $Nom =$_POST["nom"]; 
        $Prenom=$_POST["prenom"]; 
        $Age=$_POST["age"]; 
        $Ville=$_POST["ville"]; 
        $Rue=$_POST["rue"]; 
        $CodePostal=$_POST["codepostal"]; 
        $Pseudo=$_POST["pseudo"]; 
        $Motdepasse=$_POST["motdepasse"]; 
        $Sexe=$_POST["sexe"]; 
        $Mail=$_POST["mail"]; 
        $Telephone=$_POST["telephone"]; 
         
        $sql='INSERT INTO Utilisateurs (NomUSER,PrénomUSER,AgeUSER,VilleUSER,RueUSER,CPUSER,PseudoUSER,MDPUSER,SexeUSER,EmailUSER,TelUSER) VALUES("'.$Nom.'","'.$Prenom.'","'.$Age.'","'.$Ville.'","'.$Rue.'","'.$CodePostal.'","'.$Pseudo.'","'.$Motdepasse.'","'.$Sexe.'","'.$Mail.'","'.$Telephone.'");'; 

        } 
        echo'<p>'.$Nom.'</p>'; 
        echo'<p>'.$Prenom.'</p>'; 
        echo'<p>'.$Age.'</p>'; 
        echo'<p>'.$Ville.'</p>'; 
        echo'<p>'.$Rue.'</p>'; 
        echo'<p>'.$CodePostal.'</p>'; 
        echo'<p>'.$Pseudo.'</p>'; 
        echo'<p>'.$Sexe.'</p>'; 
        echo'<p>'.$Mail.'</p>'; 
        echo'<p>'.$Telephone.'</p>'; 
        odbc_do($cnx,$sql); 
         
} 

else 
echo'Problème à la connexion<br/>'; 
odbc_close($cnx); 

?>


Quel est mon problème ? Je croyais que ODBC_DO devait contenir 2 paramètres seulement et la on m'en demande 8 !

Merci de votre aide

Xineroks

7 réponses

  1. Melooo Messages postés 1476 Statut Membre 84
     
    Salut,
    la syntaxe de ta requête n'est pas bonne.
    "select * from Utilisateurs";  
    
    0
  2. Xineroks
     
    Si, elle est bonne ^^
    Ce n'est pas mon erreur :/

    J'ai oublié de préciser que mon erreur provient de mon 2eme odbc_do($cnx,$sql)
    0
  3. Melooo Messages postés 1476 Statut Membre 84
     
    Tu met l'exécution de ta requête en dehors du while, donc du coup $sql n'existe pas...
    0
  4. Xineroks
     
    J'ai testé aussi dedans, mais ça ne fonctionne pas non plus ... Je ne comprend plus rien
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Xineroks
     
    UP :(

    Je desespère, je recherche mon erreur depuis longtemps

    de plus j'ai testé avec un nouveau code encore et encore mais j'ai l'erreur comme quoi je dois avoir 10 arguments dans mon odbc_do() ...

    <?php
    $cnx=odbc_connect('bdd','','');
    if ($cnx) 
    	{
    	$requete="select * from Utilisateurs;";
    	$jeu =odbc_do($cnx,$requete);
    
    	while(odbc_fetch_into($jeu,$champ))
    	{
    	if ($champ[0] <> NULL)
    		
    		$Nom =$_POST["nom"];
    		$Prenom=$_POST["prenom"];
    		$Age=$_POST["age"];
    		$Ville=$_POST["ville"];
    		$Rue=$_POST["rue"];
    		$CodePostal=$_POST["codepostal"];
    		$Pseudo=$_POST["pseudo"];
    		$Motdepasse=$_POST["motdepasse"];
    		$Sexe=$_POST["sexe"];
    		$Mail=$_POST["mail"];
    		$Telephone=$_POST["telephone"];
    		odbc_do($cnx,'INSERT INTO Utilisateurs (NomUSER,PrénomUSER,AgeUSER,VilleUSER,RueUSER,CPUSER,PseudoUSER,MDPUSER,SexeUSER,EmailUSER,TelUSER) VALUES("'.$Nom.'","'.$Prenom.'","'.$Age.'","'.$Ville.'","'.$Rue.'","'.$CodePostal.'","'.$Pseudo.'","'.$Motdepasse.'","'.$Sexe.'","'.$Mail.'","'.$Telephone.'");');
    		#$sql='INSERT INTO Utilisateurs #(NomUSER,PrénomUSER,AgeUSER,VilleUSER,RueUSER,CPUSER,PseudoUSER,MDPUSER,SexeUSER,EmailUSER,TelUSER) #VALUES("'.$Nom.'","'.$Prenom.'","'.$Age.'","'.$Ville.'","'.$Rue.'","'.$CodePostal.'","'.$Pseudo.'","'.$Motdepasse.'","'.#$Sexe.'","'.$Mail.'","'.$Telephone.'");';
    
    		}
    		echo'<p>'.$Nom.'</p>';
    		echo'<p>'.$Prenom.'</p>';
    		echo'<p>'.$Age.'</p>';
    		echo'<p>'.$Ville.'</p>';
    		echo'<p>'.$Rue.'</p>';
    		echo'<p>'.$CodePostal.'</p>';
    		echo'<p>'.$Motdepasse.'</p>';
    		echo'<p>'.$Pseudo.'</p>';
    		echo'<p>'.$Sexe.'</p>';
    		echo'<p>'.$Mail.'</p>';
    		echo'<p>'.$Telephone.'</p>';
    
    
    
    }
    
    else
    echo'Problème à la connexion<br/>';
    odbc_close($cnx);
    
    ?>
    0