Problème avec champ Timestamp

stark_2097 Messages postés 28 Date d'inscription samedi 3 décembre 2005 Statut Membre Dernière intervention 19 septembre 2008 - 19 sept. 2008 à 00:58
stark_2097 Messages postés 28 Date d'inscription samedi 3 décembre 2005 Statut Membre Dernière intervention 19 septembre 2008 - 19 sept. 2008 à 13:18
Salut,

J'ai un petit soucis avec un champ timestamp... je m'y prend surement comme un manche...
Dans ma base, le champ "time" est de type Timestamp, on update current_timestamp, not null et current_timestamp par defaut

Dans mon formulaire, j'utilise ceci :

Puis un "INSERT INTO mabase VALUES ('$TIME')

Mais mon Timestamp reste toujours à 0000-00-00 00:00:00 j'ai eu beau essayer des value="", ou value="Time()"

Quelqu'un à la solution miracle, je veux juste qu'il enregistre la date à laquelle les données sont enregistrées dans la base pour utiliser ce champ comme base de tri pour un affichage...

4 réponses

stark_2097 Messages postés 28 Date d'inscription samedi 3 décembre 2005 Statut Membre Dernière intervention 19 septembre 2008
19 sept. 2008 à 10:18
Pour info, pas la peine de trop se creuser la tête à essayer de faire marcher ce champ si on peut le remplacer par un autre...

Ce que je souhaite, c'est un champ qui se remplit automatiquement avec une valeur que je peux ensuite utiliser pour faire un classement par "derniers ajoutés".

Je peux presque le faire actuellement avec mon champ "ID" qui est auto_increment mais le jour ou je vais modifier la page en question, je ne souhaite pas rechanger son ID pour un plus récent sinon dans quelques mois je vais avoir un nombre d'ID à plus de 5 chiffres...

Ce que je veux c'est mettre un timestamp qui lui serait mis à jour à chaque ajout/modification et sur lequel je me base pour faire un tri...

Il y a peut être une fonction "alternative" qui me permettrait de générer un timestamp dans le code php qui ensuite serait enregistré dans un champ de type "varchar" ou autre non ?
Je suis pas sur qu'on soit obligé d'avoir un champ de type timestamp ... surtout que j'ai aucune intention d'afficher une date avec ce champ, juste utilisé pour faire un tri desc...
0
stark_2097 Messages postés 28 Date d'inscription samedi 3 décembre 2005 Statut Membre Dernière intervention 19 septembre 2008
19 sept. 2008 à 11:55
Bon, j'ai réussi à me dépanner seul...

J'ai passé le champ "time" en VARCHAR et j'ai mis dans page d'envoi de données à la base cette ligne :
$Time = time();

Puis le "INSERT INTO mabase VALUES ('$TIME')

Et ça fonctionne, j'ai bien le timestamp qui s'enregistre dans la base.

C'est peut être pas très "propre" mais ça fonctionne
0
cs_putch Messages postés 624 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 14 décembre 2009 1
19 sept. 2008 à 13:14
salut.

le plus propre en effet est de ne pas avoir de champ caché dans ton formulaire et d'utiliser la fonction time() lors de l'insertion

myqsl_query("INSERT INTO matable monchamp VALUES ".time());

++
0
stark_2097 Messages postés 28 Date d'inscription samedi 3 décembre 2005 Statut Membre Dernière intervention 19 septembre 2008
19 sept. 2008 à 13:18
OK merci, je vais surement avoir retoucher un peu le code ma page, j'essayerais alors d'insérer directement la fonction time() comme ton exemple ci dessus plutôt de créer une varaible $Time=time(); pour ensuite la reprendre 2 lignes plus bas pour l'insérer.
0
Rejoignez-nous