pb date

pascal.novelli
Invité n'ayant pas de compte PHPfrance

25 févr. 2012, 08:32

Bonjour

J'ai crée un site wordpress avec un base sql. J'ai installé un module de livre d'or gwolle-gb.
Par défaut le format de date ets VARCHAR d'une longueur de 10. Mon problème est que je dois modifier les dates de certains messages du livre d'or. Quand je modifie les dates, celà apparait sur mon site au 01/01/1970.
Comment conertir le format VARCHAR en DATE ? j'ai changé le type en datetime mais rien ne change.

Image

merci de votre aide

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

26 févr. 2012, 19:22

Le problème est que le format varchar correspond uniquement à une chaine de caractère et le fait de transformer le type en date ne permet absolument pas à php de faire le lien entre la valeur et une date équivalente.

Pour changer ton champ en date et conserver les valeurs, il te faudrait :
- ajouter une nouvelle colonne temporaire en varchar(10)
- copier les valeurs de ta colonne entry_date vers ta colonne temporaire
- convertir ta colonne entry_date au format date
- copier les valeurs de ta colonne temporaire vers ta colonne entry_date en transformant tes données qui sont au format JJ/MM/AAAA pour les enregistrer au format AAAA-MM-JJ (à coup de substring pour récupérer l'année, le mois et le jour)
- supprimer ta colonne temporaire
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...