Timestamp d'une page [Réglé]
Comment connaitre la dernière mise à jour d'une page
Support des Modules
forum6691 Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre forum6691
- Inscrit le : 04/10/2009
- Groupes :
J'utilise le module Page pour des pages perso que les membres peuvent modifier.
J'aimerai afficher les dernières pages qui ont été modifiées depuis moins d'une semaine.
J'ai donc créé un petit code PHP pour récupérer le timestamp d'une page, le comparer à la date actuelle et afficher les pages les plus récentes
Code PHP :
<?php //Chargement de l'environnement de PHPBoost include_once('../kernel/begin.php'); //Définition du titre de la page (correspond au contenu des balises <title> </title>) define('TITLE', 'Listes des pages perso récemment modifiées'); //Chargement de l'environnement graphique include_once('../kernel/header.php'); $w = 1; // on crée la requête SQL et on envoie la requête $result = $Sql->query_while("SELECT title, hits,encoded_title,timestamp FROM ".PREFIX."pages WHERE is_cat=0 AND id_cat=1 ORDER BY timestamp" . $Sql->limit(0, 10), __LINE__, __FILE__); // on fait une boucle qui va faire un affichage pour chaque enregistrement while($row = $Sql->fetch_assoc($result)) { echo 'heure='.time().' timestamp='.$row['timestamp'].' différence='.(time()-$row['timestamp']),"<br />"; if((time()-$row['timestamp'])<604800){ echo '<a href="http://pneupassionmed.free.fr/',url('pages/pages.php?title=' . $row['encoded_title']),'">'; echo $row['title']; echo '</a> '; echo ' modifiée le '.date('jS F Y H:i:s',$row['timestamp']); echo '- (visites ='.$row['hits'].')',"<br />"; } } // on ferme la connexion à mysql $Sql->close($result); //On libère la mémoire //Fermeture de l'environnement include_once('../kernel/footer.php'); ?>
Le code fonctionne, mais le timestamp d'une page ne semble pas changer quand on modifie une page.
J'ai peur que ce ne soit que le timestamp de la date de création de la page ?
Quelqu'un peux t'il confirmer ? Si oui y a t'il une solution pour rajouter une colonne dans la table Pages et stocker le timestamp de la dernière modification ?
Merci de votre aide
Testeur V5
Visiteur
Boosteur Inactif
Oui le timestamp n'est pas modifié lors de l'édition d'une page.
Ce que tu peux faire c'est modifier la page d'édition afin qu'elle modifie également le timestamp de la page.
forum6691 Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre forum6691
- Inscrit le : 04/10/2009
- Groupes :
Oui effectivement, mais quel fichier PHP toucher ?
Testeur V5
Visiteur
Boosteur Inactif
forum6691 Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre forum6691
- Inscrit le : 04/10/2009
- Groupes :
J'ai remplacé la ligne
Code PHP :
//$Sql->query_inject("UPDATE " . PREFIX . "pages SET contents = '" . pages_parse($contents) . "', count_hits = '" . $count_hits . "', activ_com = '" . $enable_com . "', auth = '" . $page_auth . "', id_cat = '" . $id_cat . "' WHERE id = '" . $id_edit . "'", __LINE__, __FILE__);par
Code PHP :
$Sql->query_inject("UPDATE " . PREFIX . "pages SET contents = '" . pages_parse($contents) . "', count_hits = '" . $count_hits . "', activ_com = '" . $enable_com . "', auth = '" . $page_auth . "',timestamp = '" . time() . "' ,id_cat = '" . $id_cat . "' WHERE id = '" . $id_edit . "'", __LINE__, __FILE__);
et ça marche
Édité par forum6691 Le 14/05/2012 à 19h26
Testeur V5
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie