Activités récentes

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu Activités récentes

Message par Zeste le Lun 5 Mar 2012 - 20:09

Bonjour,

Ce que je cherche à faire est ce ci :
Activité récente

il y a 3 jours - A crée son compte
il y a 3 jours - A crée son compte
il y a 4 jours - A crée son compte
il y a 4 jours - A crée son compte
il y a 5 jours - A crée son compte

En fait, ce que je voudrais c'est comme une sorte de compteur modifiable uniquement par l'admin. C'est à dire que quand je rajoute une nouvelle activité celle fasse => il y a 32 secondes - A été banni (par exemple) après le temps continue de défilé et passe de 32 secondes à 1 minute, puis 2 etc jusqu’à des journée.

Code:
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>COMPTE A REBOURS
    </title>
<script LANGUAGE="JavaScript">
seconds = (y2k - now) / 1000 + (60 * daysRound) - (60 * 60 * hoursRound) - (60 * minutesRound);
secondsRound = Math.round(seconds);
sec = (secondsRound == 1) ? " seconde" : " secondes";
}
// -->
</script>
  </head>
  <body onLoad="getTime()">
    <form name=timeForm>
      <input type="texte" name=input1 size=110 border-style="none" style="border-bottom: 0px solid; border-left: 0px solid;border-right: 0px solid;border-top: 0px solid;font:12px arial, helvetica,sans-serif">
    </form>
  </body>
</html>

Pour vous aider, même si le code n'est pas bon du tout. :S

Merci Very Happy


Dernière édition par Daylaton le Mar 6 Mar 2012 - 21:54, édité 1 fois

Zeste
# Tropactif #

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Ea le Mar 6 Mar 2012 - 20:02

Bonjour,

Voilà un exemple de code :

Code:
<div id="actrec">
  <div title="1331062963366">A mangé une glace</div>
  <div title="1331062923366">S'est trébuché</div>
</div>
<script type="text/javascript">
(function(){var c=jQuery,d=+new Date,e=function(a){var a=Math.floor((d-a)/6E4),b=a%60,a=(a-b)/60;if(!a)return"Il y a "+b+" minute"+(1<b?"s":"");b=a%24;a=(a-b)/24;return!a?"Il y a "+b+" heure"+(1<b?"s":""):"Il y a "+a+" jour"+(1<a?"s":"")};c("#actrec span[title]").each(function(){c(this).prepend(e(+c(this).attr("title"))+" - ")})})();
</script>
Le title="######" c'est la date de l’évènement, pour avoir le chiffre d'un moment, il faut par exemple ouvrir une console javascript ( maj + ctrl + k sur google chrome ) et taper dedans +new Date(), ou bien voici une page qui l'affiche :
http://www.maonyn.com/h19-js-timestamp

Cordialement.

Ea
Aidactif
Aidactif

Messages : 23419
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Zeste le Mar 6 Mar 2012 - 20:14

En fait, ce que je veux c'est que quand je mets par exemple 1 seconde dans <div title="1"> A mangé une glace

Le compteur défile et passe à 2, 3, 4 secondes. Cela affiche 1 seconde, après 1 minute, 1 heure, 1 jour, 5 jours.

Je sais pas si vous voyez ce que je veux dire. Shocked

Zeste
# Tropactif #

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Ea le Mar 6 Mar 2012 - 20:23

Quel intérêt ?

Les gens qui vont rouvrir la page vont tout le temps ravoir le compte au départ ?


Cordialement.

Ea
Aidactif
Aidactif

Messages : 23419
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Zeste le Mar 6 Mar 2012 - 20:33

Quand les personnes seront sur cette page, ils auront juste à faire F5 ou rechargement pour voir le défilement des secondes, minutes, heures...

J'ai mis votre code, mais il n'apparaît pas et me bloque des fonctionnalités comme le "Qui est en ligne ?" Menu situé à droite, coulissant.

Zeste
# Tropactif #

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Ea le Mar 6 Mar 2012 - 20:53

Si vous ne voulez pas le mettre sur le forum ( widget, page d'accueil, page html avec l'allure du forum, ... ) mais sur une page html vierge, alors il faut ajouter au début de la page :

Code:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" type="text/javascript"></script>
Et le code j'avais mal fait un changement dedans, c'est plutôt :

Code:
<div id="actrec">
  <div title="1331062963366">A mangé une glace</div>
  <div title="1331062923366">S'est trébuché</div>
</div>
<script type="text/javascript">
(function(){var c=jQuery,d=+new Date,e=function(a){var a=Math.floor((d-a)/6E4),b=a%60,a=(a-b)/60;if(!a)return"Il y a "+b+" minute"+(1<b?"s":"");b=a%24;a=(a-b)/24;return!a?"Il y a "+b+" heure"+(1<b?"s":""):"Il y a "+a+" jour"+(1<a?"s":"")};c("#actrec div[title]").each(function(){c(this).prepend(e(+c(this).attr("title"))+" - ")})})();
</script>
Et oui là comme c'est, ça calculera le nombre de minute, heure ou jour en fonction du chiffre ( qui désigne la date exacte de l’évènement ).

On pourrait rajouter une mise à jour toute les minutes et ça donnerait :

Code:
<div id="actrec">
  <div title="1331062963366">A mangé une glace</div>
  <div title="1331062923366">S'est trébuché</div>
</div>
<script type="text/javascript">
(function(){var c=jQuery,e=function(a){var a=Math.floor((+new Date-a)/6E4),b=a%60,a=(a-b)/60;if(!a)return"Il y a "+b+" minute"+(1<b?"s":"");b=a%24;a=(a-b)/24;return!a?"Il y a "+b+" heure"+(1<b?"s":""):"Il y a "+a+" jour"+(1<a?"s":"")};c("#actrec div[title]").each(function(){var a=c(this),b=a.text(),f=+a.attr("title"),d=function(){a.text(e(f)+" - "+b)};setInterval(d,6E4);d()})})();
</script>
Mais sinon je ne vois pas trop l'utilité de recommencer dés le départ à chaque ré-affichage de la page.

Pour ce qui est d'interférence avec d'autre partie, si vous avez collé tout le code ça ne devrait pas arriver scratch

Cordialement.


Dernière édition par Etana le Mar 6 Mar 2012 - 20:56, édité 1 fois

Ea
Aidactif
Aidactif

Messages : 23419
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Zeste le Mar 6 Mar 2012 - 20:55

Ah non, ça redémarre pas à chaque ouverture de la page. Le temps lui défile toujours. Wink

En fait, je voudrais qu'il soit sur une page Html. silent
Et sur ma page Html j'ai ceci.


Dernière édition par Daylaton le Mar 6 Mar 2012 - 20:58, édité 1 fois

Zeste
# Tropactif #

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Ea le Mar 6 Mar 2012 - 20:57

Si c'est sur une page html avec l'allure du forum ( en ayant coché oui à "utiliser le haut et le bas du forum ) le code tel quel devrait fonctionner.

Si vous voulez utiliser une page html vierge, alors il faut ajouter le code que j'ai donné dans mon post précédent au début de la page html.


Cordialement.

Ea
Aidactif
Aidactif

Messages : 23419
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Zeste le Mar 6 Mar 2012 - 21:03

Oui, impécable, merci. Wink

Et quand je voudrais rajouter une
Code:
<div title="#########">S'est trébuché</div>

Il faudra juste modifier les chiffres ? (Je pense pas)

Pour que cela démarre bien aux secondes puis passe aux minutes etc.

Zeste
# Tropactif #

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Ea le Mar 6 Mar 2012 - 21:28

Oui, voilà une modification pour pouvoir mettre des formats plus simple :

Code:
<div id="actrec">
  <div title="1331062963366">A mangé une glace</div>
  <div title="1331062923366">S'est trébuché</div>
  <div title="06 Mar 2012 18:05">a fêté 18h05</div>
  <div title="2012-01-27">a fêté l'anniversaire de mozart</div>
</div>
<script type="text/javascript">
(function(){var c=jQuery,e=function(a){var a=Math.floor((+new Date-a)/6E4),b=a%60,a=(a-b)/60;if(!a)return"Il y a "+b+" minute"+(1<b?"s":"");b=a%24;a=(a-b)/24;return!a?"Il y a "+b+" heure"+(1<b?"s":""):"Il y a "+a+" jour"+(1<a?"s":"")};c("#actrec div[title]").each(function(){var a=c(this),b=a.text(),f=/[^0-9]/.test(a.attr("title"))?Date.parse(a.attr("title")):+a.attr("title"),d=function(){a.text(e(f)+" - "+b)};setInterval(d,6E4);d()})})();
</script>
On peut soit mettre directement le timestamp ( juste un chiffre ), où bien on met une date au format rfc 2822 ou iso 8601.

Cordialement.


Dernière édition par Etana le Mar 6 Mar 2012 - 21:33, édité 1 fois

Ea
Aidactif
Aidactif

Messages : 23419
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Zeste le Mar 6 Mar 2012 - 21:31

Merci beaucoup, c'est parfait. Wink

Juste quand on met
Code:
<div title="Date.parse('06 Mar 2012 21:31')">a fêté 21h31</div>

Cela met "Il y a 0 minute" Il y a moyen d'afficher les secondes ?

Zeste
# Tropactif #

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Ea le Mar 6 Mar 2012 - 21:36

Voilà avec les secondes :

Code:
<div id="actrec">
  <div title="1331062963366">A mangé une glace</div>
  <div title="1331062923366">S'est trébuché</div>
  <div title="06 Mar 2012 18:05">a fêté 18h05</div>
  <div title="2012-01-27">a fêté l'anniversaire de mozart</div>
</div>
<script type="text/javascript">
(function(){var c=jQuery,e=function(a){var a=Math.floor((+new Date-a)/1E3),b=a%60,a=(a-b)/60;if(!a)return"Il y a "+b+" seconde"+(1<b?"s":"");b=a%60,a=(a-b)/60;if(!a)return"Il y a "+b+" minute"+(1<b?"s":"");b=a%24;a=(a-b)/24;return!a?"Il y a "+b+" heure"+(1<b?"s":""):"Il y a "+a+" jour"+(1<a?"s":"")};c("#actrec div[title]").each(function(){var a=c(this),b=a.text(),f=/[^0-9]/.test(a.attr("title"))?Date.parse(a.attr("title")):+a.attr("title"),d=function(){a.text(e(f)+" - "+b)};setInterval(d,1E3);d()})})();
</script>

Cordialement.

Ea
Aidactif
Aidactif

Messages : 23419
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Activités récentes

Message par Zeste le Mar 6 Mar 2012 - 21:54

Yeah /o/

Merci. Very Happy

Zeste
# Tropactif #

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut


Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum