Salve, mi serve uno script che mi protegga una pagina dal flooding, uno script che tenga conto del numero di sessioni aperte e che le limiti per esempio a 40
Salve, mi serve uno script che mi protegga una pagina dal flooding, uno script che tenga conto del numero di sessioni aperte e che le limiti per esempio a 40
ciao. io ho fatto uno script per contare le visite (cioè lo script non fa solo quello fa molto di piu') e in piu' ho messo proprio un controllo di questo tipo però usa le tabelle quindi devi avere mysql
dopo un tot di visite blocca l'ip
Non basta una cosa tipo:
Codice PHP:
session_start()
// Dichiari variabili di sessione, in questo caso id
$numero // Numero massimo di sessioni
while ($SESSION['id']) { i++; }
if (i=$numero) {
// Banna l'ip
}
mmm JoErNanO il tuo codice è solo un pezzo di un codice ben più ampio, cmq non voglio bannare per sempre le ip, ma solo quando si verifichino 30 connessioni far visualizzare alle eccedenti un messaggio che le informa che il numero è stato raggiunto e di riprovare più tardi o qualcosa di simile.
quà il codice finisce ma poi??Codice PHP:
if (i=$numero) {
// Banna l'ip
}
al posto dei commenti metti
die("Fanculizzati perchè fai troppe connessioni");
e risolvi il problema
mmm correggimi se sbaglio ma questo dice se le sessioni sono unguali a quel numero chiudi le operazioni e dai il messaggio fanculizzati ecc.
hey ma questo vale anche per le connessioni maggiori? cioè imposto il numero a 6, ma se ci sono 7 connessioni in teoria non dovrebbe funzionare perchè il numero i è impostato a 6
basta che alla if ci metti >=
e stai a posto
Ah ecco allora avevo intuito giusto
EDIT: ohhhh mi da errore.
Ecco il mio script.
ed ecco l'errore:Codice PHP:
session_start()
// Dichiari variabili di sessione, in questo caso id
$numero = 30; // Numero massimo di sessioni
while ($SESSION['id']) { i++; }
if (i>=$numero) {
die("ecc ecc");
}
ed alla line 41 ci sta: $numero = 30; // Numero massimo di sessioniParse error: syntax error, unexpected T_VARIABLE in /**********************.php on line 41
FunCool: Non scrivere due messaggi consecutivi, utilizza il tasto Edita.
Ultima modifica di funcool : 21-11-2006 alle ore 10.54.27