Bonjour à tous,
Je ne comprend pas j'ai une méthode, qui me sert pour les 'INSERT, UPDATE et DELETE' et qui fonctionne correctement jusqu’à maintenant:
Cette méthode fonctionne correctement pour faire des 'UPDATE' mais avec le code suivant le try/catch ne me renvoi aucune erreur et la méthode me renvoi TRUE alors que rien n'est modifié dans la BDD... C'est étrange! Voici le code en question:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 public function dbExec($req,$condition) { try { $bdd = new PDO('mysql:host='.$this->dbhost.';dbname='.$this->db, $this->dbuser, $this->dbpass); $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(Exception $log) { echo 'Erreur: '.$log->getMessage().'<br />'; echo 'Code: '.$log->getCode(); } if (empty($log)) { $requete = $bdd->prepare($req); if (!is_array($condition)) { $condition = array(); } try { $do = $requete->execute($condition); } catch(Exception $log) { echo 'Erreur: '.$log->getMessage().'<br />'; echo 'Code: '.$log->getCode(); } // Si on trouve une reponse if ($do != false) { return true; } else { return false; } } }
Je ne comprend pas pourtant quand je teste coté serveurs les données que j'enregistre sont bien différentes de celles présentes dans ma DB (ne serai-ce que le timestamp) et pourtant rien ne change dans ma DB....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 // Mettre à jour une note if ($_POST['updateNote']) { if ( ($_POST['id'] != '') && ($_POST['noteTitre'] != '') && ($_POST['noteContent'] != '') && ($_POST['noteKeywords'] != '') ) { // Recuperer le timestamp $time = time(); if (!$Core->dbExec('UPDATE `notes` SET `titre`=?, `note`=?, `keywords`=?, `ts_lastmodif`=? WHERE `id_creator`=? AND `id`=?', array($_POST['noteTitle'], $_POST['noteContent'], $_POST['noteMetaKeywords'], $_SESSION['userid'], $time, $_POST['id'])) ) { $txt = '<p>Erreur lors de l\'enregistrement des modifications...</p>'; $Core->newErrorMessage($txt); } else { $txt = '<p>Les modifications sont correctement enregistrés!</p>'; $Core->newMessage($txt); } } else { $txt = '<p>Erreur: Impossible de d\'enregistrer les modifications...</p>'; $Core->newErrorMessage($txt); } }
J'en perd mon latin et je suis fatigué alors ça n'arrange rien, si quelqu'un peut me filer un coup de main, il est le bienvenu!
Merci
Nico
Partager