Amélioration anti up 24 h

Fermé
arthur - 25 févr. 2014 à 11:55
 arthur - 25 févr. 2014 à 13:56
Bonjour,

j'ai fais un code pour posté et attendre 24 h après la dernière question pour évité qu'il poste 5 message d'affiler



	  //24 heures anti up

      $query24heures = $pdo->prepare("SELECT forum_membre_id,post_time,forum_topic.topic_locked as topic_locked FROM forum_post JOIN forum_topic ON forum_topic.topic_id=forum_post.topic_id WHERE forum_post.topic_id=? ORDER BY post_id DESC LIMIT 1");

	  $query24heures->execute(array($_REQUEST["tid"]));

      $antiup = $query24heures->fetch();

	  if($infoTopic['topic_locked']<1 && ($antiup['forum_membre_id']==$_SESSION['id'] && (($antiup['post_time']+(60*60)*24)<time()) || id2level() >= MODO))


et j'ai mis çe code aussi



           if(($antiup['forum_membre_id']==$_SESSION['id']&&($antiup['post_time']+(60*60)*24)>time())&&id2level()<MODO && $antiup['topic_locked']<1)

$_page .= 'Vous ne pouvez pas ajouter de nouvelle réponse car vous avez posté le dernier message de ce sujet il y a moins de 24h.
           <br />
		   Nous vous invitons à modifier votre dernier message en attendant de nouvelles réponses.';



donc là ça marche le code il attend bien 24 h

donc ma question c'est de savoir comment mettre un petit compte a rebours

exemple

si on poste un message là il affichera

il vous reste 24 h avant de pouvoir reposté une nouveau message

ensuite si on attend 5 minute par exemple

là il affichera

il vous restera 23 h et 55 minute et 00 seconde

etc...

es ce que vous pouvez me dire comment on fait

merci de votre aide





A voir également:

8 réponses

Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
Modifié par Pitet le 25/02/2014 à 12:14
Salut,

C'est une simple soustraction, tu as déjà tous les éléments nécessaires.


$tempsRestant = ($antiup['post_time'] + (60 * 60) * 24)) - time();



Bonne journée
0
merci, mais si je mets le code a ce niveau

           if(($antiup['forum_membre_id']==$_SESSION['id']&&($antiup['post_time']+(60*60)*24)>time())&&id2level()<MODO && $antiup['topic_locked']<1)
$tempsRestant = $antiup['post_time'] + ((60 * 60) * 24) - time();
$_page .= 'Vous ne pouvez pas ajouter de nouvelle réponse car vous avez posté le dernier message de ce sujet il y a moins de 24h.
           <br />
		   Nous vous invitons à modifier votre dernier message en attendant de nouvelles réponses.';



il m'aficher ma phrase :

Nous vous invitons à modifier votre dernier message en attendant de nouvelles réponses.';


hors il ne devrais pas
0
DebianCoq Messages postés 26 Date d'inscription lundi 20 janvier 2014 Statut Membre Dernière intervention 24 février 2016 5
25 févr. 2014 à 13:36
Lol c' est une blague ? il faut le traiter le résultat !
$tempsRestant contient le nombre de secondes restantes au compte à rebours. Il faut maintenant le convertir en heures, minutes et secondes et accessoirement l' insérer dans la chaîne à afficher...
0
c pas encore une blague sinon j'aurais attendu le 1 er avril

tu pourrai me faire svp

merco mon ami
0
DebianCoq Messages postés 26 Date d'inscription lundi 20 janvier 2014 Statut Membre Dernière intervention 24 février 2016 5
25 févr. 2014 à 13:44
Je viens de te donner la réponse, je vais pas en plus te donner la solution.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ca ne marche pas lol
0
DebianCoq Messages postés 26 Date d'inscription lundi 20 janvier 2014 Statut Membre Dernière intervention 24 février 2016 5
25 févr. 2014 à 13:52
Ben désolé je suis débutant aussi.
0
DebianCoq Messages postés 26 Date d'inscription lundi 20 janvier 2014 Statut Membre Dernière intervention 24 février 2016 5
25 févr. 2014 à 13:56
Moi j' aurais essayé ça:
echo 'Il vous reste précisément '.$tempsRestant.' secondes de réflexion.';
0
merci pour votre réponse
0