pysco68
Messages postés681Date d'inscriptionsamedi 26 février 2005StatutMembreDernière intervention21 août 20148 28 sept. 2008 à 16:26
avec quoi travaille tu?
si tu écris toi même la routine d'affichage il suffirait de comparer un timestamp unix (de la création de ton article) avec l'actuel et vérifier s'il est plus petit que 5 jours ( 5 * 24 * 3600 puisque le tout est en secondes...)
si tu a besoin de plus de précisions demande
<hr width="100%" size="2" />Some Geek: Tous les programmeurs sont des brutes, [...] ils violent chaque ligne, chaque language [...] et n'on aucun goût pour la beauté de ./sh
<?php
/**
/* Paramètres de pagination */
$nb_nouv_par_page = $nbre_page; /* Nombre de nouvelles qui seront affichées sur chaque page */
$url = "./telechargement.php?categorie=$categorie&page=";
/* On détermine quelle est la page qui est actuellement affichée */
$page_en_cours = isset($_GET['page']) ? intval($_GET['page']) : 0;
$page_affichee = ($page_en_cours + 1);
$connect_db = connect(); // connexion a la bdd
/* Requête pour compter les nouvelles présentes dans notre base de données */
$sql_nb = "SELECT COUNT(*) FROM `telechargement` WHERE categorie=". $categorie ." ";
/* Exécution de la requête et récupération du résultat */
$resultat_1 = mysql_query($sql_nb);
$nb_nouvelles = mysql_result($resultat_1, 0);
/* Calcul du nombre total de pages : on arrondit à l'entier supérieur (ceil() ) */
$nb_pages = ceil($nb_nouvelles / $nb_nouv_par_page);
/**
Nous disposons maintenant de suffisament d'éléments pour créer notre barre de navigation.
Première chose à vérifier : avons-nous plusieurs pages, et au moins une ?
*/
if($nb_pages > 0)
{
/* On définit une variable qui contiendra les données de navigation */
$barre_nav = "";
/* Nous avons au moins une page : avons nous besoin d'une barre de navigation ? */
if($nb_pages > 1)
{
/**
Nous avons plusieurs pages: nous allons afficher successivement les liens vers
les pages précédentes s'il y en a, la page en cours et les liens vers les pages
suivantes. Nous aurons une barre sous la forme : 1 | 2 | 3 etc.. en liens clicables
sauf pour la page en cours dont nous mettrons le chiffre en gras
*/
if($page_en_cours > 0)
{
for($i = 0; $i < $page_en_cours; $i++)
{
$p = $i + 1;
$barre_nav .= """. $url . $i ."" title="page ". $p ."">". $p ." | ";
}
}
/**
On affiche la page en cours : notez le (+ 1) : pour les calculs, nous partons d'une
page 0 mais pour l'internaute, il est préférable de commencer à la page 1, donc on incrémente
*/
$barre_nav .= " ". $page_affichee ." ";
/* Enfin on affiche (s'il y a lieu) les liens vers les pages suivantes */
if(($page_affichee) < $nb_pages)
{
/* Il reste encore d'autres pages à afficher */
$nb_suivantes = $nb_pages - ($page_affichee);
for($j = ($page_affichee); $j < $nb_pages; $j++)
{
$p = $j + 1;
$barre_nav .= " | "". $url . $j ."" title="page ". $p ."">". $p ."";
}
}
/* On peut définir en plus la situation dans une autre variable à afficher ailleurs */
$page_affichee = "Page ". $page_affichee ." sur un total de ". $nb_pages ." pages.";
}
else
{
/* Nous n'avons qu'une seule page, on peut se contenter d'afficher juste page 1/1 */
$barre_nav .= "page 1/1";
}
/**
On peut maintenant afficher notre page. On va commencer par récupérer les informations
On doit définir à partir de quelle nouvelle on doit récupérer les données dans la clause LIMIT.
*/
$debut = $page_en_cours * $nb_nouv_par_page;
$sql_n = "SELECT * FROM telechargement WHERE categorie=". $categorie ." LIMIT ". $debut .", ". $nb_nouv_par_page .";";
$nouvelles = mysql_query($sql_n);
?>
<?php
}
/* on libère la mémoire */
mysql_free_result($resultat_1);
mysql_free_result($nouvelles);
/* On peut fermer la connexion à MySQL */
close(); // On peut fermer la connexion à MySQL
/* On affiche maintenant la barre de navigation */
?>
class=\"navigation\"><?php echo($barre_nav); ?>
<?php
}
else
{
/**
Nous n'avons aucune page, on peut alors afficher un message autre
sans devoir nous préoccuper de la navigation
*/
echo "Aucun fichier dans cette catégorie";
}
?>