Bonjour,
Je m'en remets à vous face un problème de requête.
En effet, toutes mes valeurs passent bien, mais et je ne sais pas pourquoi je n'ai aucune mise à jour de ma base. Si vous pouviez m'aider, Merci par avance
le code
Modifié par hophop (15 Feb 2013 - 15:32)
Je m'en remets à vous face un problème de requête.
En effet, toutes mes valeurs passent bien, mais et je ne sais pas pourquoi je n'ai aucune mise à jour de ma base. Si vous pouviez m'aider, Merci par avance
le code
public function save($data){
try {
$bdd = new PDO('mysql:host='.HOST.';dbname='.DBNAME.'', ''.LOGIN.'', ''.PASSWD.'');
} catch (PDOException $e) {
echo 'Connexion échouée : ' . $e->getMessage();
}
if(isset($data['id']) && !empty($data['id'])){
//prepare
$sql = 'UPDATE '.$this->table.' SET';
$exec ="";
foreach($data as $k=>$v){
if($k !="id"){
$sql .= " $k = '$v',";
}
}
$sql = substr($sql, 0,-1);
$sql .= " WHERE id=".$data['id'];
$req = $bdd->exec($sql);
}
else{
//prepare
$sql = 'INSERT INTO '.$this->table.' (';
foreach($data as $k=>$v){
$sql .= " $k,";
}
$sql = substr($sql, 0,-1);
$sql .= ') VALUES (';
foreach($data as $k=>$v){
$sql .= " :$k,";
}
$sql = substr($sql, 0,-1);
$sql .= ")";
//execute
foreach($data as $k=>$v){
$exec .= "'$k' => $v,";
}
$exec = substr($exec, 0,-1);
$req = $bdd->prepare($sql);
$req->execute(array($exec));
}
}
Modifié par hophop (15 Feb 2013 - 15:32)