Requête qui ne fonctionne pas....

Fermé
merevinh Messages postés 30 Date d'inscription mardi 5 juin 2012 Statut Membre Dernière intervention 6 octobre 2014 - Modifié par zipe31 le 16/04/2013 à 11:19
 Utilisateur anonyme - 16 avril 2013 à 11:50
Bonjour tout le monde,

voila cela fait 2 semaines que je suis sur la même fonction et je n'ai toujours pas réussi à résoudre mon problème seulement je suis en stage et je termine vendredi et si je n'arrive pas à me débloquer je ne pourrai pas finir mon projet et cela me gêne énormément :

function modifier_produit_prestashop($key){
		$sql3 =  mysql_query("SELECT(LAST_INSERT_ID( id_product ))FROM ps_product LIMIT 8");
		while($r[] = mysql_fetch_assoc($sql3));
				$sql5 = mysql_query("update ps_product_lang set name = '".$key."' where id_product = '$r'");
	}


Ci dessus voici ma fonction, ma première requête me permet de sélectionner un code (ou in id si vous préférez, ensuite je récupère les données dans un array_assoc ma deuxième requête fait un update dans une table en fonction des id que je récupère d'ou le where id _product = '$r' seulement quand je lance ma requête j'ai une erreur qui m'affiche Notice: Array to string conversion in C:\wamp\www\Nouveaudossier1\fonctions.php on line 41. Comment je pourrais faire pour que cette fonction puisse marcher sachant qu' avec ces lignes j'appel ma fonction :

$output5 = array_slice($produit , 2);
	$output5 = array_filter($output5);
	foreach($output5 as $key){
		modifier_produit_prestashop($key);
	}

1 réponse

Utilisateur anonyme
16 avril 2013 à 11:50
Salut,

Ce ne serait pas à ce niveau là :
$sql5 = mysql_query("update ps_product_lang set name = '".$key."' where id_product = '$r'"); 
 

Juste avant tu ecris :
$r[] = mysql_fetch_assoc($sql3)

Du coup $r est un tableau associatif.

Essais comme ça :
while($r = mysql_fetch_assoc($sql3));
				$sql5 = mysql_query("update ps_product_lang set name = '".$key."' where id_product = '".$r[(LAST_INSERT_ID( id_product ))]."');

0