Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1328 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Limiter le nombre de requete php par minute

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Limiter le nombre de requete php par minute

n°803010
yobogs
Posté le 22-07-2004 à 12:30:17  profilanswer
 

Bonjour,
J'aimerai limiter le nombre de requetes par minutes à 5.
Pour cela je stock les ip des visiteurs dans une table avec l'heure de la dernière connexion.
Là où je bloque c'est au nivo de la requete.
Je ne sais pas koi ou comment selectionner les champs ... (plutot de kel maniere parce que le select etc ... ça va :))
 
D'avance merci

mood
Publicité
Posté le 22-07-2004 à 12:30:17  profilanswer
 

n°803014
boulax
Inserer phrase hype en anglais
Posté le 22-07-2004 à 12:33:35  profilanswer
 

yobogs a écrit :

Bonjour,
J'aimerai limiter le nombre de requetes par minutes à 5.
Pour cela je stock les ip des visiteurs dans une table avec l'heure de la dernière connexion.
Là où je bloque c'est au nivo de la requete.
Je ne sais pas koi ou comment selectionner les champs ... (plutot de kel maniere parce que le select etc ... ça va :))
 
D'avance merci


 
requete php ? tu veu dire l'acces a une page ?


---------------
Posté depuis des chiottes, sales. Me gusta.
n°803027
esox_ch
Posté le 22-07-2004 à 12:49:38  profilanswer
 

bein... je vois pas le prob ...  
 
SELECT id FROM users WHERE heure_connect > $heure_actuelle+5min && ip=$ip
 
apres si ca te retourne un resultat ==> tu peu afficher la page, sinon non

n°803207
yobogs
Posté le 22-07-2004 à 14:57:26  profilanswer
 

certes j'me suis conpliqué la vite pour rien ;)
Merci bcp ...

n°803240
SatanKoRn
J'T'A'M !
Posté le 22-07-2004 à 15:16:40  profilanswer
 

esox_ch a écrit :

bein... je vois pas le prob ...  
 
SELECT id FROM users WHERE heure_connect > $heure_actuelle+5min && ip=$ip
 
apres si ca te retourne un resultat ==> tu peu afficher la page, sinon non


 
c'est ça k'il voulait ??  il me semblait ke non :  

yobogs a écrit :

J'aimerai limiter le nombre de requetes par minutes à 5.


 
or, ta requête parle de 5 minutes... lui, il veut 5 requêtes par minute et pas plus... or avec ta requête, ca joue pas... non?


---------------
Matt
n°803629
esox_ch
Posté le 22-07-2004 à 18:05:26  profilanswer
 

si c 5 reket sql par min je vois mal comment le faire (a part en fesant comme une reket mais dan un ficher)

n°803647
SatanKoRn
J'T'A'M !
Posté le 22-07-2004 à 18:12:05  profilanswer
 

esox_ch a écrit :

si c 5 reket sql par min je vois mal comment le faire (a part en fesant comme une reket mais dan un ficher)


je ferais comme ca:
table: compteur
id (primary key, auto-increment), ip (char(15)), compte (tinyint), temps.  
 
puis avant de faire une requête, tu controles ke depuis une minute compte soit inférieur à 5. si ca fait + d'une minute, tu mets le compteur à 0. si le compteur est supérieur ou égal à 5, tu mets un message d'erreur. et sinon, c'est ok et alors tu incréments compte de 1...
 :pt1cable:  :pt1cable:  
ca marche ou ca marche pas ?  :??:


---------------
Matt
n°803660
SatanKoRn
J'T'A'M !
Posté le 22-07-2004 à 18:17:02  profilanswer
 

je crois que c'est correct, mais j'ai quand même un doute :D :D


Message édité par SatanKoRn le 22-07-2004 à 18:17:24

---------------
Matt
n°803711
mathix
mathix@jabber.org
Posté le 22-07-2004 à 20:14:17  profilanswer
 

5 requêtes par minutes c'est 1 requête max pour 12 secondes
donc tu lis dans la table la date de dernière action :
- si date lu < date actuelle + 12 secondes : interdir l'action
- sinon : autoriser l'action et mettre à jour la table
 
et c'est tout  :)

n°803712
SatanKoRn
J'T'A'M !
Posté le 22-07-2004 à 20:15:17  profilanswer
 

c'est correct :)


---------------
Matt
mood
Publicité
Posté le 22-07-2004 à 20:15:17  profilanswer
 

n°803785
spark
Luc ?
Posté le 22-07-2004 à 22:38:42  profilanswer
 

c'est surtout totalement faux :D
5 requetes en 1 minute, si j'ai envie d'en faire 3 en meme temps, et 2 en meme temps 59secondes + tard, j'ai le droit.
or avec le systeme de mathix, c'est pas jouable :p

n°803796
Beegee
Posté le 22-07-2004 à 22:58:47  profilanswer
 

il faut une table avec une date / heure (on regarde pas les secondes) et un compteur pour cette date / heure, qui vaudra maxi 5 ;)

n°803842
Core 666
Posté le 22-07-2004 à 23:54:27  profilanswer
 

Ils vont être content tes visiteurs abonnés à AOL, Noos ou Club-Internet ... Plutôt que de t'emmerder avec un script PHP tu devrais installer mod_throttle si tu es en dédié :)


Message édité par Core 666 le 22-07-2004 à 23:54:34
n°803919
harrysauce
Miaaaooou!
Posté le 23-07-2004 à 02:49:59  profilanswer
 

Core 666 a écrit :

Ils vont être content tes visiteurs abonnés à AOL, Noos ou Club-Internet ... Plutôt que de t'emmerder avec un script PHP tu devrais installer mod_throttle si tu es en dédié :)

J'ai du mal à cerner le rapport avec la choucroute :o

n°803920
T509
$job-&gt;GetJob(now)
Posté le 23-07-2004 à 02:58:26  profilanswer
 

travailler sur 1 minute glissante :  
à l'initialisation du système, on a droit à 5 requetes.
 
à un instant t, il faut regarder si l'action au rang -5 a eu lieu 1min ou plus avant. Si c'est OK, alors action OK, sinon, action bloquée.
 
cela permet d'avoir un système non dépendant d'une date, d'une heure et une minute donnée.
 
Dès qu'un des 5 créneaux est "libre", il est à nouveau utilisable.


Message édité par T509 le 23-07-2004 à 02:59:05

---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
n°803921
harrysauce
Miaaaooou!
Posté le 23-07-2004 à 03:03:01  profilanswer
 

D'ailleurs je trouve la solution mysql totalement stupide, lui il veut limiter à 5 requêtes/min. Or avec les solutions utilisant mysql développées plus haut dans le topic, avec d'éxécuter chaque requête on en éxécute une autre pour savoir si on pourra éxécuter la requête "principale". Donc en se limitant à 5 requêtes, il en éxécute 10....

n°803929
Beegee
Posté le 23-07-2004 à 07:33:28  profilanswer
 

mouais ... il faudrait déjà qu'il nous explique pourquoi il veut faire ça, ce serait plus simple ;)

n°804066
Core 666
Posté le 23-07-2004 à 10:24:48  profilanswer
 

harrysauce a écrit :

J'ai du mal à cerner le rapport avec la choucroute :o


Le rapport c'est que les abonnées AOL et Noos sont connectés depuis le proxy de leur provider, et qu'une simple limitation par l'IP va rendre leur navigation impossible si le site a un minimum de trafic. Même problème pour ceux qui se connectent avec Club-Internet sans avoir configuré leur connexion à la main : le kit CI fait automatiquement passer le http par un proxy.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Limiter le nombre de requete php par minute

 

Sujets relatifs
Incrémenter un nombrerequete SQL select like dans un CLOB
Requete Update avec jointure sous SQL SERVEURLimiter la taille du fichier catalina de Tomcat
Problème de date dans requête imbriquéeNombre de ligne d'un fichier texte ouvert sous Excel
[MySQL] Requète un peu compliqué...[Socket] Répondre à une requête HTTP
Méthode correcte ? + Pb de nombre de champs indéterminéPeut-on limiter le nombre de lignes d'une textarea
Plus de sujets relatifs à : Limiter le nombre de requete php par minute


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR