[php/SQL] date aprés une certaine date

Répondre
Mr.White
le 05/05/2004 à 15:02
Mr.White
Bonjour,

Je souhaiterai récupérer tout les tuples dont le champ date est supérieur à la date du jour moin un mois.

voici donc ce que j'ai tenté :


// Préparation des données avant la requête
$date_ref = mktime(0,0,0,date("Y"), date("m")-2, date("d") ); // Date du mois dernier

// La requête
$requette_news = "select * from news where (date,'%Y/m/%d') > ".$date_ref;

$resultat_requette_news = mysql_query($requette_news) or die();

En vous disant merci par avance ...
Cultivons la bonne vibs !
Mr.White
le 05/05/2004 à 15:36
Mr.White
L'affichage de mon site devient foureux et il m'écrit cette erreur :

Warning: mktime(): Windows does not support negative values for this function in c:\le site 4players\4-players\script\php\news.php on line 7
select * from news where (date,'%Y/m/%d') > -1

De plus je ne saisi pas tout dans ce code comme (date,'%Y/m/%d')

Et je voudrai afficher une date au format JJ/MM/AAAA et j'ai bien l'impression que là je récupère le format de la base de données (donc JJ/MM/AAAA) alors comment transformé ce format pour afficher comme je le veut?
Cultivons la bonne vibs !
LA GLOBULE
le 05/05/2004 à 16:07
LA GLOBULE
Pour changer le format de ta date, regarde cette astuce.

Ensuite, laisse tomber tes mktime, et fais plutot un truc du genre :

<?php
$date_today = date("Y-m-d");

$sql = 'SELECT prosper_youpla_boum FROM news WHERE date_news > SUBDATE('.$date_today.', INTERVAL 1 MONTH) ORDER BY date_news';

// mysql_query & CO
?>


PS : dis nous si ca fonctionne (ce code, j'en suis pas sur, je l'ai ecrit comme ca sans le tester a partir du manuel MySQL).
Mr.White
le 05/05/2004 à 16:26
Mr.White
Ca ma tout l'aire de fonctionné maintenant j'ai des problème pour afficher ce que je souhaite et surtout (pour rester en rapport avec le sujet de ce post) j'aimerai afficher une date au forma Jour/Mois/Année , Tu doit savoir comment faire,non?
Cultivons la bonne vibs !
LA GLOBULE
le 05/05/2004 à 16:34
LA GLOBULE
Oui quand tu as recupere ta date au format americain, tu la passes ou format francais avec l'astuce que je t'ai donné en lien dans mon precedent message.
Mr.White
le 05/05/2004 à 16:54
Mr.White
OKi,

Il me reste un drenier problème.
La requête s'éffectue bien mais elle ne trouve rien et donc n'affiche rien.

Il n'entre pas dans ma boucle while voici donc la requête ... :

date_ref = date("Y-m-d");

// La requête
$requette_news = "select titre, corps, date, persistant from news where date > SUBDATE(".$date_ref.", INTERVAL 1 MONTH) ORDER BY date";
//echo $requette_news;
$resultat_requette_news = mysql_query($requette_news) or die('problème avec la requête.<BR>erreur SQL :'.mysql_error());

while($resultat_news = mysql_fetch_array($resultat_requette_news) )

les champ de ma table :
titre (primary key)
corps
date
persistant


Vérait-tu une erreur?
Cultivons la bonne vibs !
LA GLOBULE
le 05/05/2004 à 17:04
LA GLOBULE
$requette_news = 'select titre, corps, date, persistant from news where date > SUBDATE("'.$date_ref.'", INTERVAL 1 MONTH) ORDER BY date';

Essaye ceci.
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours