Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour à tous
Je voudrais faire un simple Update et voila comment je m'exécute
$dateObject = new Zend_Date(); $date = $dateObject->get(Zend_Date::TIMESTAMP); $data = array( 'compteurUpdate' => $resultat['compteurUpdate']+1, 'lastUpdate' => $date ); $whereClause = array( $this->getAdapter()->quoteInto('email = ?', $mail) ); $this->update($data ,$whereClause);
le problème et qu’après avoir effectué cette update, je consulte ma bdd et mon champs 'lastUpdate' est comme ça : 0000-00-00 00:00:00 alors que mon timestamp dans mon code est du type : 1305542124.
Mon champs 'lastUpdate' est déclaré en timestamp.
Merci d'avance
Hors ligne
Bonjour,
Il est également possible de laisser le moteur de BDD insérer lui même le timestamp courant au moment de l'update :
[lang=php] $data = array( 'compteurUpdate' => $resultat['compteurUpdate']+1, 'lastUpdate' => new Zend_Db_Expr('CURRENT_TIMESTAMP') );
On peut aussi s'affranchir de cette partie en faisant en sorte que MySQL (si c'est bien le SGBDR que tu utilises), insère tout seul le timestamp courant lors d'un update -> voir la doc sur le site officiel http://dev.mysql.com/doc/refman/5.0/en/timestamp.html
Est-ce que celà peut t'aider ?
Hors ligne
salut,
faut peut-être aller au plus simple avec :
[lang=php]$date = date("Y-m-d H:i:s");
rien ne sert d'ouvrir une classe à mon humble avis.
++
Dernière modification par ubini (16-05-2011 14:20:31)
Hors ligne
Merci j'ai utilisé ta méthode Willmore et ça fonctionne comme je le désire.
Merci pour vos réponse
Hors ligne