Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".
Test de l'ISO d'Ubuntu francophone : nous avons besoin de testeurs pour la version francophone d'Ubuntu 14.04. Liens et informations ici.

Attention, une faille de sécurité dans bash a récemment été rapportée, il est recommandé de mettre à jour son système (plus de détails)

#1 Le 25/01/2013, à 12:02

Bat_Tuc

Probleme écriture sur BDD mysql

Bonjour à tous
j'ai un probleme concernant l'écriture dans une bdd a partir d'un script Php
voila la partie concerné

$req = $bdd->prepare('UPDATE joueurs SET 
		Cagnotte = :nvCagnotte, 
		Position = :nvPosition, 
		ProdAcier= :nvProdAcier, 
		ProdPetrole= :nvProdPetrole,
		ProdAuto= :nvProdAuto,
		ProdNavale= :nvProdNavale,
		ProdHouille= : nvProdHouille, 
		ProdPlomb= :nvProdPlomb,
		ProdUranium= :nvProdUranium,
		ProdProdRiz= :nvProdRiz,
		ProdOr= :nvProdOr,
		ProdCobalt= :nvProdCobalt,
		ProdCacao= :nvProdCacao,
		ProdCaoutchouc= :nvProdCaoutchouc,
		ProdLaine= :nvProdLaine,
		ProdFer= : nvProdFer,
		ProdNickel= :nvProdNickel,
		ProdCuivre= :nvProdCuivre,
		ProdCoton= :nvProdCoton,
		ProdBle= :nvProdBle,
		ProdSucre= :nvProdSucre,
		ProdArgent= :nvProdArgent,
		ProdTungstene= :nvProdTungstene,
		ProdAluminium= :nvProdAluminium,
		ProdTabac= :nvProdTabac,
		Joker= :nvJoker 
		WHERE Id =:id');
		
	
		$req->execute(array(
		'nvCagnotte'=>$joueurtmp->getCagnotte(),
		'nvPosition' => $joueurtmp->getPosition(),
		'nvProdAcier'=> $joueurtmp->Produit('Acier'),
		'nvProdPetrole'=> $joueurtmp->Produit('Petrole'),
		'nvProdAuto'=>$joueurtmp->Produit('Construction Automobile'),
		'nvProdNavale'=>$joueurtmp->Produit('Construction Navale') ,
		'nvProdHouille'=>$joueurtmp->Produit('Houille') , 
		'nvProdPlomb'=>$joueurtmp->Produit('Plomb'),
		'nvProdUranium'=>$joueurtmp->Produit('Uranium'),
		'nvProdProdRiz'=>$joueurtmp->Produit('Riz'),
		'nvProdOr'=>$joueurtmp->Produit('Or'),
		'nvProdCobalt'=>$joueurtmp->Produit('Cobalt'),
		'nvProdCacao'=>$joueurtmp->Produit('Cacao'),
		'nvProdCaoutchouc'=>$joueurtmp->Produit('Caoutchouc Naturel'),
		'nvProdLaine'=>$joueurtmp->Produit('Laine Brute'),
		'nvProdFer'=>$joueurtmp->Produit('Fer'),
		'nvProdNickel'=>$joueurtmp->Produit('Nickel'),
		'nvProdCuivre'=>$joueurtmp->Produit('Cuivre'),
		'nvProdCoton'=>$joueurtmp->Produit('Coton Brut'),
		'nvProdBle'=>$joueurtmp->Produit('Ble'),
		'nvProdSucre'=>$joueurtmp->Produit('Sucre'),
		'nvProdArgent'=>$joueurtmp->Produit('Argent'),
		'nvProdTungstene'=>$joueurtmp->Produit('Tungstene'),
		'nvProdAluminium'=>$joueurtmp->Produit('Aluminium'),
		'nvProdTabac'=>$joueurtmp->Produit('Tabac'),
		'nvJoker'=>$joueurtmp->getNbJoker(),
		'id'=>$joueurtmp->getId()
		))or die(print_r($bdd->errorInfo()));

et voila l'erreur constate
Warning: PDOStatement::execute() [<a href='pdostatement.execute'>pdostatement.execute</a>]: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens

je me doute bien qu'il y a un probleme au niveau de mon tableau que je passe en parametre de ma requete mais volila plus d'une heure que j'ai le nez dessus et impossible de trouve ce qui plante ..
totue aide serait la bienvenue smile

merciiiii


Un jour mon père m' a dit " fils, si ton programme tourne, c est qu il peut faire mieux ..."

Hors ligne

#2 Le 25/01/2013, à 12:03

Bat_Tuc

Re : Probleme écriture sur BDD mysql

ma requette demande 27 element ( avec Id qui sert de selection ) et mon array passe en parametre lors de l'execution comporte lui aussi 27 elements.
Chaque cle correspond


Un jour mon père m' a dit " fils, si ton programme tourne, c est qu il peut faire mieux ..."

Hors ligne

#3 Le 25/01/2013, à 16:11

Bat_Tuc

Re : Probleme écriture sur BDD mysql

Personne ?


Un jour mon père m' a dit " fils, si ton programme tourne, c est qu il peut faire mieux ..."

Hors ligne

Haut de page ↑