Bloquer acces lien [Besoin d'une piste]

Résolu
Bonjour,

j'ai un script :
<?php
// Script entirèrement par Pyro :) 
$atotal = "" ; //création de la variable pour le moment vide .
$macheteur = ($row_Recordset1['macheteur']) ; // Recup de la moyenne d'acheteur

$nb_min = 1; // definition du nombre 1
$nb_max = 2; // definition du nombre 2
$nombre = mt_rand($nb_min,$nb_max); // choix aléatoire entre le 1 et le 2 et stockage dans la variable $nombre 

$nb_min2 = 1; // définition du nombre en fonction de la moyenne ( à faire)
$nb_max2 = 6; // définition du nombre en fonction de la moyenne( à faire )
$nombrefinal = mt_rand($nb_min2,$nb_max2);// choix aléatoire et stockage dans la variable $nombrefinal

if($nombre == 1){ //si le nombre trouvé au début est 1
	$visiteur = $macheteur + $nombrefinal ; // On fait une addition : moyenne + $nombrefinal
	echo "Vous êtes au dessus de votre moyenne. Visiteurs aujourd'hui: $visiteur" ; // nombre final de visiteur
}
else { //sinon (si c'est un 2)
	$visiteur = $macheteur - $nombrefinal ; // c'est un soustraction : moyenne - $nombrefinal
		echo "vous êtes en dessous de votre moyenne. Visiteurs aujourd'hui: $visiteur" ; // nombre final de visiteur
}

?>


Qui fonctionne, seulement, je souhaiterai que ce script (la page) soit accessible via un lien.
Mais ce lien ne doit être dispo que toutes les 24h !

Je n'ai aucune idée de comment faire !

QQun peut m'aider?

4 réponses

  1. j'ai peut etre trouvé .

    Si je mets un colone dateacces dans ma BDD et que je mets un if sur mon lien ça marcherai ?
    0
    1. Bonjour

      Ton ech $lol retourne koi ?
      0
  2. Tu as ca comme fonction pour le nbres de jour :

    <?php
    $dateDiff = $date1 - $date2;
    $fullDays = floor($dateDiff/(60*60*24));
    echo "Differernce is $fullDays jours";
    ?>
    0
    1. la date doit etre en stimestamps ?
      0
    2. Oui attention au format des date qui doit etre identique :

      $Date = Date("d/m/Y") ;

      et la requete qui extrait la date de la bdd
      0
    3. <?php
      $dateBDD = ($row_Recordset1['dateargent']) ; // 11/08/2012
      $dateactuel = 'date("d/m/Y")' ; // 18/08/2012

      $dateDiff = $dateactuel - $dateBDD ;
      $difference = floor($dateDiff/(60*60*24));
      echo "Différence: $difference jours";

      if($difference >= 1){
      echo " c'est bon" ;
      }
      else {
      echo " ça fait moins d'un jour" ;
      }

      ?>
      $dateactuel = 'date("d/m/Y")' ;

      $dateDiff = $dateactuel - $dateBDD ;
      $difference = floor($dateDiff/(60*60*24));
      echo "Différence: $difference jours";

      if($difference >= 1){
      echo " c'est bon" ;
      }
      else {
      echo " ça fait moins d'un jour" ;
      }

      ?>

      Pour l'echo me donne -1 ??
      0
    4. Petit fail le code est :
      <?php
      $dateBDD = ($row_Recordset1['dateargent']) ;
      $dateactuel = 'date("d/m/Y")' ;

      $dateDiff = $dateactuel - $dateBDD ;
      $difference = floor($dateDiff/(60*60*24));
      echo "Différence: $difference jours";

      if($difference >= 1){
      echo " c'est bon" ;
      }
      else {
      echo " ça fait moins d'un jour" ;
      }

      ?>
      0
    5. Et DATE DBB = 11/08/2012
      et date actuel = 18/08/2012

      donc en faisant 18 - 11 on trouve forcement 7 . Pourquoi -1?
      0
  3. Merci beaucoup je vais essayer tout ça :)
    0
    1. Voia un pti bout de code qui marche :

      <?php
      function NbJours($debut, $fin) {

      $tDeb = explode("/", $debut);
      $tFin = explode("/", $fin);

      $diff = mktime(0, 0, 0, $tFin[1], $tFin[2], $tFin[0]) -
      mktime(0, 0, 0, $tDeb[1], $tDeb[2], $tDeb[0]);

      return(($diff / 86400));

      }

      //Annee mois jour

      $dateBDD = "2012/08/18"; //J'ai mis en dure car pas de BDD pr moi ;)
      $dateactuel = date("Y/m/d") ; // 18/08/2012

      echo $dateBDD ;
      echo $dateactuel;

      // Comment apeler la fonction
      $Nombres_jours = NbJours( $dateBDD,$dateactuel );
      // Affiche
      echo $Nombres_jours;

      if($Nombres_jours >= 1){
      echo " c'est bon" ;
      }
      else {
      echo " ça fait moins d'un jour" ;
      }

      ?>
      0
      1. Tu peux m'expliquer un peu comment le modifier pour qu'il accepte les D/m/Y ?
        0
      2. Pour modifier l'ordre de la date il faut que tu joues avec :

        $diff = mktime(0, 0, 0, $tFin[1], $tFin[2], $tFin[0]) -
        mktime(0, 0, 0, $tDeb[1], $tDeb[2], $tDeb[0]);

        actuellement :

        0 Annee

        1 Mois

        2 Jour

        dc toi tu fais

        2

        1

        0

        $diff = mktime(0, 0, 0, $tFin[2], $tFin[1], $tFin[0]) -
        mktime(0, 0, 0, $tDeb[2], $tDeb[1], $tDeb[0]);

        Ca va tu as compris la fonction ?

        Modifie aussi :

        $dateactuel = date("Y/m/d") ;

        en

        $dateactuel = date("d/m/Y") ;
        0
      3. j'ai compris oui , par contre j'avais déjà modifié comme ça et je ne trouvep plus mon erreur

        function NbJours($debut, $fin) { 
        
        $tDeb = explode("/", $debut); 
        $tFin = explode("/", $fin); 
        
        $diff = mktime(0, 0, 0, $tFin[2], $tFin[1], $tFin[0]) - 
        mktime(0, 0, 0, $tDeb[2], $tDeb[1], $tDeb[0]); 
        
        return(($diff / 86400)); 
        
        } 
        
        //Annee mois jour 
        
        $dateBDD = "17/08/2012"; //J'ai mis en dure car pas de BDD pr moi ;) 
        $dateactuel = date("d/m/Y") ; // 18/08/2012 
        0
      4. avec ce code $Nombres_jours vaut 0
        0
      5. c 1 0 2 dsl la fonction : mktime c'est :

        Heure minute seconde mois jour année

        J'ai reteste au format francais ca marche
        0