La fonction DATETIME

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : La fonction DATETIME

par x@v » 25 juil. 2008, 01:01

en faite pour faire des comparaisons de date
sur trois jours par exemple..

Code : Tout sélectionner

$this->sql="SELECT date FROM stats_trafic WHERE TO_DAYS(NOW()) - TO_DAYS(date) < 3;";
par contre
$this->sql="SELECT date FROM stats_trafic WHERE TO_DAYS(date) > 1 - TO_DAYS(date) < 3;";
ne fonctionne pas, dur, dur mysql

par djtec » 25 juil. 2008, 00:37

Voici le manuel sur les dates pour mysql peut-être que tu trouvera la solution

http://dev.mysql.com/doc/refman/5.0/fr/ ... tions.html

par x@v » 25 juil. 2008, 00:24

Effectivement j'avais trouvé l'insertion
		$this->sql="INSERT INTO stats_trafic (id, langue, date, ip, referer, page, navigateur, os) ".
		" VALUES(NULL, '$langue', NOW(), '".$_SERVER["SERVER_ADDR"]."', '".$_SERVER["HTTP_REFERER"]."', 
		'".$_SERVER['PHP_SELF']."', '$navigateur', '$value')";
ce qui m'affiche :
2008-07-23 18:53:45
par contre impossible de récupérer les résultats d'un jour ?
		$jour=date("Y-m-d");
		echo $jour;
		$this->sql="SELECT date FROM stats_trafic WHERE DATE_FORMAT( date, '%Y-%m-%d' )= '".$jour."'";
edit->
$this->sql="SELECT date FROM stats_trafic WHERE DATE_FORMAT( date, '%Y-%m-%d' )= Curdate()";
sa fonctionne merci ;)
J'ai pas fait de bench mais à mon avis il y a d'autre manière de gagner en performance, vos contribution sont les bienvenue.
[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

par zeus » 24 juil. 2008, 21:19

Modération :
Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "SQL & Bases de données".

Merci de prendre le temps de lire les règlements
ainsi que l'intitulé de chaque forum avant de poster un nouveau sujet.

par AB » 24 juil. 2008, 20:33

Ah oui aussi pour insérer la date et l'heure dans mon champ datetime j'utilise NOW()

par AB » 24 juil. 2008, 20:13

Essaies

Code : Tout sélectionner

WHERE TO_DAYS(date) = TO_DAYS(NOW())

La fonction DATETIME

par x@v » 24 juil. 2008, 16:48

Bonjour,
j'essaie d'enregistrer dans un champ DATETIME la date du jour donc j'ai fait :

Code : Tout sélectionner

$datetime=time(); // année/mois/jour/heure/minute/seconde $d=date("Y-m-d-H-i-s", $datetime); $this->sql="INSERT INTO stats_trafic (id, langue, date, ip, referer, page, navigateur, os) ". " VALUES(NULL, '$langue', '".$d."', '".$_SERVER["SERVER_ADDR"]."', '".$_SERVER["HTTP_REFERER"]."', '".$_SERVER['PHP_SELF']."', '$navigateur', '$value')";
ce qui fonctionne bien, mais ensuite je veux obtenir et afficher toutes les date d'aujourd'hui !
et je fait ça

Code : Tout sélectionner

$this->sql="SELECT date FROM stats_trafic WHERE date=TO_DAYS(NOW())";
Mais sa ne fonctionne pas ?
Merci
edit ->
cette requete est plus appropri pour l'insertion du jour ?

Code : Tout sélectionner

$this->sql="INSERT INTO stats_trafic (id, langue, date, ip, referer, page, navigateur, os) ". " VALUES(NULL, '$langue', CURTIME(), '".$_SERVER["SERVER_ADDR"]."', '".$_SERVER["HTTP_REFERER"]."',
Mais pour la comparaison j'ai donc fait :

Code : Tout sélectionner

$this->sql="SELECT date FROM stats_trafic WHERE date=NOW()";
Mais sa me renvoie.
SELECT date FROM stats_trafic WHERE date=NOW()
et pour ça pareil

Code : Tout sélectionner

$this->sql="SELECT date FROM stats_trafic WHERE date=TO_DAYS(NOW()";
sa ne me renvoie pas la date