Page 1 sur 2
Probleme de TIMESTAMP
Posté : 08 oct. 2008, 02:04
par oups
Bonjour,
J'ai un petit probleme avec TIMESTAMP :
j'ai un champ "date" dans une table.
Voici ses atributs.
On voit bien que NULL = NON
Par contre quand je clique sur "Dictionnaire de données" :
On voit que NULL = OUI (

)
Dans ma base de donnée (choix récupéré de formulaire) le timestamp est toujours
0000-00-00 00:00:00
Je ne comprend pas d'où peut venir le probleme.
Merci de vos réponses.
Posté : 08 oct. 2008, 07:27
par Cyrano
regarde cette réponse qu'a faite
Albat sur un autre sujet :
http://www.phpfrance.com/forums/voir_re ... php#264950
Posté : 08 oct. 2008, 16:35
par oups
merci Cyrano, mais
Le probleme est le même même avec un autre nom de champ.
Quelqu'un pour m'aider ? Merci.
Posté : 08 oct. 2008, 16:38
par zeus
Posté : 08 oct. 2008, 16:51
par oups
merci zeus,
Je l'avait déjà lu en français il me semble, mais cet arfticle ne m'aide pas.
Sauf si tu vois une solution dedans.. moi pas
Posté : 09 oct. 2008, 17:45
par oups
Personne ne saurais m'aider ?
Merci.
[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]
Posté : 09 oct. 2008, 19:28
par Berzemus
C'est quoi le problème en fait ? tu voudrais un timestamp nul ?
Posté : 09 oct. 2008, 19:55
par AB
Ou alors peut-être confonds-tu le nom des champs avec le type des champs ?
Par exemple si dans ton champ "date" (que tu devrais appeler autrement) tu trouves 0000-00-00 00:00:00 c'est qu'il est de type datetime;
Si tu veux enregistrer un timestamp il existe un type timestamp
Cela dit est tu certain qu'il est plus utile pour tes besoins d'utiliser un timestamp plutôt qu'un type date ou datetime ? MySql possède des fonctions très puissantes pour faire des comparaisons, interval etc sur les formats date et datetime.
Posté : 10 oct. 2008, 01:25
par oups
C'est quoi le problème en fait ? tu voudrais un timestamp nul ?
Mon probleme
Berzemus est que j'ai un formulaire qui fait des ajout sur mon site.
Ces ajouts sont classés (le dernier viens ce classé en premier, des news quoi)
Mais vu que tous les ajouts sont à 0000-00-00 00:00:00 donc rien ne ce classe.
AB, non je ne pense pas confondre le nom du champ et avec le type de champ.
J'ai changé le nom de mon champ le probleme reste le même.
Mais est-ce normal que on voit que NULL = NON :
Et que là on voit NULL = OUI :
Comment ce fait t'il que le TIMESTAMP indique toujours 0000-00-00 00:00:00 et n'indique pas la bonne date et la bonne heure ??? (par exemple tout de suit ce seraitl
2008-10-10 01:26:47 )
Merci de votre aide.
Posté : 10 oct. 2008, 07:18
par Cyrano
Pourrait-on voir la requête d'insertion ?
Posté : 10 oct. 2008, 12:52
par Invité
Oui Cyrano :
Code : Tout sélectionner
`dates` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
Posté : 10 oct. 2008, 13:41
par Cyrano
Non, ça, c'est la ligne dans la requête de création de la table. Ce qui serait intéressant, c'est la requête qui est exécutée lorsque tu ajoutes une lignes dans cette table.
Posté : 11 oct. 2008, 15:39
par Invité
Code : Tout sélectionner
$requete=mysql_query("SELECT id, titre, dates
FROM news
ORDER BY dates DESC
") or die(mysql_error());
$couleurtab = 0;
while ($data=mysql_fetch_array($requete)) {
$oupsid = $data['id'];
$oupstitre = $data['titre'];
$oupsdate = $data['dates'];
echo <A HREF=\"page.php?id=$oupsid\"><b>$oupstitre</b></A><BR>";
}
mysql_close($cnt);
?>
Posté : 11 oct. 2008, 15:50
par Boro64
Bonjour
Excusez moi d'intervenir, mais ton champs se nomme 'date', et il me semble lire 'dateS' sur ta requête...peut être ça, non?
Posté : 11 oct. 2008, 16:08
par Cyrano
Dis-moi
oups, je m'interroge : sais-tu lire ??? Comment fais-tu une insertion dans une table au juste ?
J'ai dit : "
la requête qui est exécutée lorsque tu ajoutes une lignes dans cette table"
Si tu y arrives avec un "SELECT ...", je te jure que je boufferai mon chapeau !