Affichage d'une news selon une date

Répondre
rickways
le 26/12/2006 à 02:14
rickways
Bonjour à tous,

Tout d'abord merci pour le temps que vous voudrez bien m'accorder.

Voilà ma situation.
Je viens de tester le script de news, simplissime à souhait, et je le trouve presque parfait pour mes besoins.
J'ai modifié quelques infos au niveau de l'affichage, mais mes compétences en reste malheureusement à ce niveau (néanmoins je prends beaucoup de plaisir à regarder tout cela, et à modifier légèrement)

Pour aller plus loin j'aurais besoin de 2 astuces:
- La première serait de ne pouvoir afficher les news qu'à partir du moment où la date est bonne!
(exemple, j'envoie un news avec la date 2 janvier 2007, et bien elle n'apparait que le deux janvier 2007)
Quelles sont les fonctions qui permettent de faire cela ?
- Ma deuxième demande est directement liée. Le script de base envoi la date de rédaction, comment envoyer manuellement la date ( ?)

Merci beaucoup, et joyeux noel au passage

ERIC
moogli
le 26/12/2006 à 13:08
moogli
salut,

pour le 1er point, il faut modifier la requete :
SELECT auteur, titre, date, texte_news FROM news ORDER BY date DESC;
en utilisant la clasue where et la fonction NOW() de mysql
SELECT auteur, titre, date, texte_news FROM news WHERE date<=NOW() ORDER BY date DESC;
donc demande une date inférieur ou égale à à celle du jour (en fait de l'instant présent attention aux heures ;) ).

ensuite pour le N°2 c'est aussi simple.
Le script utilise la fonction date(/fonction] puor avoir la date de l'instant ou ce fait l'insertion dans la db.
$sql = 'INSERT INTO news VALUES("", "'.addslashes($_POST['auteur']).'", "'.addslashes($_POST['titre']).'", "'.date("Y-m-d H:i:s").'", "'.addslashes($_POST['news']).'")';

si tu veut mettre une date, à toi d'ajouter dans le formulaire les champ jour, mois et année (l'heure exact aussi si tu le souhaite). Il va te falloir aussi vérifier avant l'insertion dans la db que ces champ soit conforme à ce que tu souhaite :
- jour : un entier telque 1 <= jour <= 31
- mois : un entier telque 1 <= mois <= 12
- année : un entier qui doit avoir 4 digits et je pense supérieur à 2006 maintant :).
il faut aussi penser à ajouter le l'heure les minutes et second afin de la chaine représentant la date soit conforme au motif suivant :
Y-m-d H:i:s (i étant les minutes). Une date valide est par exemple 2006-12-26 13:11:16
tu peut très bien mettre 00:00:00 pour l'heure.

je crois que tu a tous ce qu'il te faut le reste est dans la doc :)

Joyeux nowel à toi aussi :)

@+
Il en faut peu pour être heureux !!!!!
Répondre

Ecrire un message

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