par
cleex » 24 août 2009, 12:33
Bonjour,
J'ai crée un site de petite annonces gratuite qui doivent rester mximum 30 jours.
J'ai donc 2 solutions :
1) Afficher celles qui ont moin de 30 jours
2) Supprimer automatiquement ( script automatique sur le serveur ) celles qui ont plus de 30 jours.
Ma table comporte les champs suivants qui serviraient à faire cette selection :
jour = jour de la mise en ligne de l'annonce
mois = mois de la mise en ligne de l'annonce
annee = année de la mise en ligne de l'annonce
Pour des raison de problème, j'ai du séparer cette date comme ci-dessus.
Maintenant voici mon code pour afficher la table...
Je précise que le script marche mais qu'il faut juste y mettre la restriction de temps.
//Une connexion SQL est déjà ouverte ici...
$messagesParPage=40; //Nous allons afficher 40 messages par page.
$retour_total=mysql_query('SELECT COUNT(*) AS total FROM annonce WHERE status=1'); // <--RESTRICTION A METTRE ICI
//Nous récupérons le contenu de la requête dans $retour_total
$donnees_total=mysql_fetch_assoc($retour_total); //On range retour sous la forme d'un tableau.
$total=$donnees_total['total']; //On récupère le total pour le placer dans la variable $total.
//Nous allons maintenant compter le nombre de pages.
$nombreDePages=ceil($total/$messagesParPage);
if(isset($_GET['page'])) // Si la variable $_GET['page'] existe...
{
$pageActuelle=intval($_GET['page']);
if($pageActuelle>$nombreDePages) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages...
{
$pageActuelle=$nombreDePages;
}
}
else // Sinon
{
$pageActuelle=1; // La page actuelle est la n°1
}
$premiereEntree=($pageActuelle-1)*$messagesParPage; // On calcul la première entrée à lire
// La requête sql pour récupérer les messages de la page actuelle.
$retour_messages=mysql_query('SELECT * FROM annonce WHERE status=1 ORDER BY id DESC LIMIT '.$premiereEntree.', '.$messagesParPage.''); // <-- RESTRICTION AUSSI A METTRE ICI
while($donnees_messages=mysql_fetch_assoc($retour_messages)) // On lit les entrées une à une grâce à une boucle
{
...
}
Merci d'avance à ceux qui prendront
la peine (oui oui ... =D> ) de m'aider.
Dorian