cs_christobal
Messages postés208Date d'inscriptionjeudi 3 octobre 2002StatutMembreDernière intervention31 mars 2011
-
29 oct. 2006 à 20:53
cs_christobal
Messages postés208Date d'inscriptionjeudi 3 octobre 2002StatutMembreDernière intervention31 mars 2011
-
2 nov. 2006 à 21:32
Bonjour, je souhaiterais pouvoir comparer la date du serveur avec la date saisie dans la BD.
Pour y voir plus claire, j'ai dans une db les champs id, date, lib.
Ainsi quand la date serveur et inferieur ou égale à la date db j'ai le message du champ "lib" de la date a venir.
Une foi la date bd passé c'est a la suivante.
Et si il n'y a plus rien alor j'ai le message "Pas de date pour le moment"
J'ai fait le script suivant, mais il prend seulement en compte la premiere dans de la db.
<?php
$dateserveur = date("Y-m-d"); // Date du serveur
$datesortie = $row_dates_sortie['date'] ; // Date de la sortie
if ($dateserveur <= $datesortie) ;
{
echo $row_dates_sortie['lib'] ;
}
else
{
echo '
Pas de date pour le moment
' ;
}
?>
cedriclomb
Messages postés275Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention27 avril 20101 1 nov. 2006 à 22:05
Salut
Bah moi je dirais que le plus simple ce serait de faire un truc du style :
($retour est l'array récupéré de la requette SQL)
SI dans ta BDD tu as une ligne par element
//comparaison de l'année
if($date('Y')= =$retour['annee'])
{
echo 'Annee identique !';
}
....
Si tu as un timestamp alors tu fais un $base=getdate($retour['time'])
Et apres parrail tu compare les elements de ton array $base et de la fonction date()
cs_christobal
Messages postés208Date d'inscriptionjeudi 3 octobre 2002StatutMembreDernière intervention31 mars 2011 2 nov. 2006 à 09:37
J'utilise la fonction Y-m-d et c'est tres important de vérifier la date en entier.
Par contre je suis complétement perdu car plusieur personne mon donné des tuyos completement différents et je ne sais vraiement pas quoi faire.
cedriclomb
Messages postés275Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention27 avril 20101 2 nov. 2006 à 10:07
Premiere chose, il faut savoir que en pprog il ya toujours plusieurs moyen d'arriver a un meme but donc il est normal que tu est plusieurs méthodes.
Soit tu fais des comparaisons de chaines soit tu compares elements par elements. L'avantage du elements par elements c'est simplement que tu peus retourner un message diferent a chaque elements.
Les 2 methodes
<?php
//premiere methode
$date_serveur=date('Y-m-d'); //retourne la chaine Y-m-d du serveur
//recuperetion de la date sql
mysql_connect($sql_host,$sql_usr,$sql_pass);
mysql_select_db($sql_db);
$sql="SELECT date FROM matable Limit 0,100";
$query=mysql_query($sql);
while($retour=mysql_fetch_array($query))
{
//comparaison de chaines
if ($date_serveur= =$retour['date'])
{
echo "C'est la meme date";
}
else
{
echo "C'est pas la meme";
}
}
mysql_close();
?>
<?php
//2eme methode
//recuperetion de la date sql
cedriclomb
Messages postés275Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention27 avril 20101 2 nov. 2006 à 20:03
Sinon tu peux faire une recherche du type
$aujourdhuy=date('Y - m - d');
$sql='SELECT * FROM matable WHERE date>='.$aujourdhuy;
$query=mysql_query($sql);
$retour=mysql_fetch_array($query)
et apres tu affiches
cs_christobal
Messages postés208Date d'inscriptionjeudi 3 octobre 2002StatutMembreDernière intervention31 mars 2011 2 nov. 2006 à 21:32
merci du coup de pouce j'ai utilisé la méthode 1 le pb est que si la date est passé il ne va pas a la date suivante.
je mexplique, dans ma table "date" j'ai 3 date de saisie.
ID Date
1 2006-11-15
2 2006-11-20
3 2006-11-30
le script actuel s'arrete a l'id 1 alors qu'il devrait passé au suivant.
De plus j'aimerais que l'orsqu'il arrive a l'id3 (le dernier de la liste) il affiche le message "plus de dates pour le moment"