insertion date dans mysql - PHP - Programmation
Marsh Posté le 17-02-2005 à 14:28:17
fais un 'echo $query4' avant le mysql_query, tu devrais voir le problème...
Marsh Posté le 17-02-2005 à 14:30:47
jj59 a écrit :
|
- pourquoi tu mets '+15' ???
- ya pas un problème dans le cas où date('d') est supérieur à 16 ? ou est ce que ca incremente le mois automatiquement ?
- à ta place je ferais ça en php
Marsh Posté le 17-02-2005 à 14:30:59
Et deja pourquoi mettre une date en varchar alors que le format date existe ??
Marsh Posté le 17-02-2005 à 14:39:35
avec le format dat , c trop la misere, rien ne marche
et quand je fais un echo de date('d/m/Y', mktime(0,0,0,date('m'),date('d')+$nb_jours,date('Y'))
sa me donne bien la bonne date, meme si on est le 16
mais voila rien ne s'inscrit dans la base
merci pour l'aide
Marsh Posté le 17-02-2005 à 14:42:45
jj59 a écrit : avec le format dat , c trop la misere, rien ne marche |
Ne pas confondre 'rien ne marche' et 'je ne sais pas m'en servir'.
jj59 a écrit : |
affiche la requête complète, je te dis!
Marsh Posté le 17-02-2005 à 14:45:10
jj59 a écrit : avec le format dat , c trop la misere, rien ne marche |
Idem moi je ne me sert plus du type int, parce que je peux pas écrire
'un' 'deux' 'trois' 'quatre' dedans...
Désolé, je suis un peu énervé aujourd'hui...
le format date marche très bien, il suffit juste de rentrer la date dans le format voulu...
Marsh Posté le 17-02-2005 à 14:50:33
j'ai fait comme tu ma dit : une echo $query
t'as raison en fait, il ne transforme pas la date il ecrit
UPDATE uploader SET date_banni = date('d/m/Y', mktime(0,0,0,date('m'),date('d')+15,date('Y')) WHERE uploader_id = 4
sa doit etre un probleme de guillemet ou quelque chose comme sa
Marsh Posté le 17-02-2005 à 14:51:29
jj59 a écrit : j'ai fait comme tu ma dit : une echo $query |
Bien, maintenant tu as situé le problème...il ne te reste plus qu'à corriger.
Marsh Posté le 17-02-2005 à 15:53:22
Pourquoi est-ce que beaucoup de monde s'embete a ajouter un nombre a un mois par exemple en faisant 1000 manips dans tous les sens ?
Il suffit de prendre la date voulue en timestamp, s'y ajouter x secondes (15 jours = 15*24*60*60 secondes)
Et seulement apres transformer le resultat obtenu en date ... non ?
Ou carrement stocker le timestamp obtenu, mais ça ça dépend de ce qu'on veut faire.
++
Marsh Posté le 17-02-2005 à 15:55:09
P.S. : Et comme je l'ai déjà dis dans un post pas loin en dessous du tiens (vive la recherche)
Code :
|
Marsh Posté le 17-02-2005 à 15:55:32
Dj YeLL a écrit : Pourquoi est-ce que beaucoup de monde s'embete a ajouter un nombre a un mois par exemple en faisant 1000 manips dans tous les sens ? |
Je suis tout à fait d'accord...travailler avec le timestamp facilite grndement la vie...
Marsh Posté le 17-02-2005 à 16:15:20
+1. Amha, si aucune fonction du type dateadd() n'est implémentée par défaut, le plus simple reste les opérations strictement arithmétiques.
Sinon, un format pratique est le AAAAMMJJ, qui permet les comparaisons numériques.
Marsh Posté le 17-02-2005 à 16:17:06
Fred999 a écrit : +1. Amha, si aucune fonction du type dateadd() n'est implémentée par défaut, le plus simple reste les opérations strictement arithmétiques. |
bof...le timestamp est meilleur, parce-que comparable et permettant les opérations d'ajouts/suppression facilement...
Marsh Posté le 17-02-2005 à 16:21:48
C'est clair, parceque vas-y pour ajouter 1 mois sur un AAAAMMJJ T'es obligé de faire un substr et tout ce qui s'en suis
Marsh Posté le 17-02-2005 à 16:42:00
Je parlais juste de comparaisons, ça m'a déjà servi sur des projets où tu récupères l'existant.
Ajouter un mois sur un AAAAMMJJ, c'est plus facile qu'on ne le pense
Marsh Posté le 17-02-2005 à 16:42:36
Fred999 a écrit : Je parlais juste de comparaisons, ça m'a déjà servi sur des projets où tu récupères l'existant. |
...et ajouter 28 jours?
Marsh Posté le 17-02-2005 à 17:46:17
Je répète : "ça m'a déjà servi sur des projets où tu récupères l'existant."
Sinon en MySQL je me sers des timestamps comme vous
Marsh Posté le 17-02-2005 à 17:47:10
Fred999 a écrit : Sinon en MySQL je me sers des timestamps comme vous |
Je me sers pas de mysql...
Marsh Posté le 17-02-2005 à 14:24:57
J'ai un petit probleme pour inserer une date dans ma base MYSQL
Je voudrais y mettre la date dans 15 jours
Voici se que je fais:
$nb_jours = '+15';
$query4 = "UPDATE uploader SET date_banni = date('d/m/Y', mktime(0,0,0,date('m'),date('d')+$nb_jours,date('Y')) WHERE uploader_id = $cpt";
mysql_query($query4);
Dans ma table, date_banni est de type VARCHAR(10) et peut etre NULL
Mon probleme est que lorsque j'execute le code, dans ma base, sa reste a 0000-00-00
merci pour l'aide