Insertion d’un élément ´ date ‘ dans une table.
Dave
-
B2D2 -
B2D2 -
Bonjour. ,
J’ai une base de donnée ´ tartampion’ avec une table ´toto’
Dans la table ´ toto’ , j’ai un champ ´ temps’ définit avec le type ´ date ´
J’aimerai inséré ( ou plutôt modifié une date déjà existante) la date d’aujourd’hui dans la table mais cela ne semble pas fonctionné.
Bout de code:
$NewDate = date (‘’Y-m-d’’);
$request = $bdd->query(‘’UPDATE toto SET temps = ‘’.$NewDate.’’ WHERE id=OK ‘´ );
$bdd->exec($query);
En faisant un echo, ma date s’affiche correctement mais dans la table, il s’inscris 0000-00-00 . Il me semble qu’il y a un problème format mais je ne vois pas.
PS: j’ai plus qu’un élément dans ta table ( des INT et des DÉC ) et cela s’enregistre bien. C’est juste l’élément date qui pose problème
Merci d’avance.
J’ai une base de donnée ´ tartampion’ avec une table ´toto’
Dans la table ´ toto’ , j’ai un champ ´ temps’ définit avec le type ´ date ´
J’aimerai inséré ( ou plutôt modifié une date déjà existante) la date d’aujourd’hui dans la table mais cela ne semble pas fonctionné.
Bout de code:
$NewDate = date (‘’Y-m-d’’);
$request = $bdd->query(‘’UPDATE toto SET temps = ‘’.$NewDate.’’ WHERE id=OK ‘´ );
$bdd->exec($query);
En faisant un echo, ma date s’affiche correctement mais dans la table, il s’inscris 0000-00-00 . Il me semble qu’il y a un problème format mais je ne vois pas.
PS: j’ai plus qu’un élément dans ta table ( des INT et des DÉC ) et cela s’enregistre bien. C’est juste l’élément date qui pose problème
Merci d’avance.
1 réponse
-
Bonjour,
Tu fais du PDO ??
Si oui.. il serait bien d'activer l'affichage des erreurs dans la connexion ET placer CHAQUE requête dans un bloc TRY/CATCH comme expliqué ici :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Et quoi qu'il arrive .. PDO ou MYSQLI ... il faut, si tu n'utilises pas les requêtes préparées (que je t'invite fortement à utiliser..) .. entourer tes variables par des quotes$NewDate = date ("Y-m-d"); $request = $bdd->query("UPDATE toto SET temps = '".$NewDate."' WHERE id='OK' " );
Tu peux aussi le faire directement en SQL$request = $bdd->query("UPDATE toto SET temps = CURDATE() WHERE id='OK' " );
Dernier point .. un ID qui serait "OK" ???
Essaye d'utiliser des ID auto-incrémentés ou du moins numériques au lieu de texte ... c'est une question de performance au niveau des requêtes ...