Bonjour,
J'aimerai optimiser mon nombre de requête a la base de donnée et je suis face un a probleme avec ma condition WHERE dans mon update.
Voici la version optimisé qui ne fonctionne pas:
$param = $_GET['param'];
$chaque_get = explode(",", $param );
$max = count( $chaque_get );
$i = 0;
$where = '';
while ($i<$max){
$where .= 'idEntretien = '.$chaque_get[$i]. ' AND ';
$i++;
}
$where = substr($where, 0, -4);
$up = "UPDATE entretiens SET datePlannificationDebut='$DateDebut' , datePlannificationFin='$DateFin' , idTecPlannification = '$tech' WHERE $where ";
$query = mysql_query($up) or die (mysql_error());
Pour info : $param = 2,3
echo $up vaut : UPDATE entretiens SET datePlannificationDebut='2010-01-13' , datePlannificationFin='2010-01-20' , idTecPlannification = '5' WHERE idEntretien = 2 AND idEntretien = 3
Voici la version non optimisé qui fonctionne :
while ($i<$max){
$up = "UPDATE entretiens SET datePlannificationDebut='$DateDebut' , datePlannificationFin='$DateFin' , idTecPlannification = '$tech' WHERE idEntretien = '$chaque_get[$i]' ";
$query = mysql_query($up) or die (mysql_error());
$i++;
}
Ce while me fait des requete en boucle avec idEntretien = 2 / idEntretien = 3 ....etc (ce qui fonctionne très bien risque de générer bcp de requête par la suite)
Comme vous l'aurez compris si j'utilise plusieurs WHERE dans mon update, ça ne fonctionne pas.
S'agit il d'une erreur de syntaxe de ma part ?
Votre aide est la bien venu en tout cas.
Merci d'avance