Bloquer l'accès à des pages par un compteur

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Bloquer l'accès à des pages par un compteur

Re: Bloquer l'accès à des pages par un compteur

par or 1 » 18 août 2022, 18:39

ou avec un cookie, mais l'utilisateur pourra le supprimer.

Re: Bloquer l'accès à des pages par un compteur

par ynx » 18 août 2022, 17:58

Bonjour,

Tu peux éventuellement utiliser une variable de session pour enregistrer le compteur de visite pour la session en cours. Mais sans connexion utilisateur et sans persistance des données (sans bdd ou autre stockage), l'utilisateur pourra simplement redémarrer son navigateur pour créer une nouvelle session et réinitialiser son compteur de visite.

<?php

session_start();

if (!isset($_SESSION['visit_count'])) {
    $_SESSION['visit_count'] = 0;
}

$_SESSION['visit_count']++;

if ($_SESSION['visit_count'] > 10) {
    header('location: index.php');
    exit();
}

?>
<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
</head>
<body>
    Nombre de visite de cette page : <?= $_SESSION['visit_count'] ?>
</body>
</html>

Bloquer l'accès à des pages par un compteur

par wisefun77 » 18 août 2022, 16:32

Bonjour,
J'aimerai savoir, s'il est possible d'autoriser l'ouverture des pages à 10 fois seulement.
Le site n'a pas de base de données.
Je ne récupère pas le login de connexion de l'user.
Dans la page header.php il y a

Code : Tout sélectionner

<?php // Start the session session_start(); ?>
A la fin du cycle il y a une déconnexion .

Code : Tout sélectionner

<?php session_start(); //to ensure you are using same session session_destroy(); //destroy the session header("location:index.php"); //to redirect back to "index.php" after logging out exit(); ?>
Si oui
Faut-il passer par un compteur sur chaque page?
J'ai fait des recherches sur PHP.net, mais ne sachant pas les noms des codes.......
Merci.