Amélioration anti up 24 h

arthur -  
 arthur -
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

8 réponses

  1. Pitet Messages postés 2845 Statut Membre 530
     
    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
  2. arthur
     
    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
    1. DebianCoq Messages postés 27 Statut Membre 6
       
      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
  3. arthur
     
    c pas encore une blague sinon j'aurais attendu le 1 er avril

    tu pourrai me faire svp

    merco mon ami
    0
  4. DebianCoq Messages postés 27 Statut Membre 6
     
    Je viens de te donner la réponse, je vais pas en plus te donner la solution.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. DebianCoq Messages postés 27 Statut Membre 6
     
    Ben désolé je suis débutant aussi.
    0
  7. DebianCoq Messages postés 27 Statut Membre 6
     
    Moi j' aurais essayé ça:
    echo 'Il vous reste précisément '.$tempsRestant.' secondes de réflexion.';
    0