Torna indietro   Serverplan Forum > Risorse per Webmaster > PHP

Rispondi
 
LinkBack Strumenti discussione Cerca in questa discussione Modalità visualizzazione
  #1 (permalink)  
Vecchio 16-05-2007, 19.40.35
Junior Member
 
Data registrazione: 16-05-2007
Residenza: parma
Messaggi: 1
kitemm is on a distinguished road
Predefinito Area riservata - Limitazione tentativi inserimento

Ciao a tutti,
premetto che non sono molto pratico di Php, anzi direi quasi per niente, e per questo vi ringrazio tantissimo in anticipo dell'aiuto che potrete darmi.
Nel mio sito sto creando un'area riservata con un file login.php e utenti.php
i loro codici sono i seguenti:
Login.php

Codice:
<?
if (isset($_COOKIE[session_name()])) setcookie(session_name(), '', time() - 90000); 

?>
<div align="center">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Area Riservata - Login</title>
</head>
<?

function check($user,$password){
  include("../pagine_riservate/utenti.php");
  foreach($utenti as $user_ => $password_){
   if (($user==$user_) AND ($password==$password_)) {
    return true;
    }  
  } 
  return false;
}

function form_login(){
?>


</p>
<body background="../../images/sfondi/sfondo_area_riservata/sfondotabella.jpg">

  <table bgcolor="#CC9900">
    <tr>
      <td  style="border-style: double; border-width: 4px" bordercolor="#C0C0C0">
<form id="login" action="<?=$PHP_SELF?>" method="post" >
<p align="center">


<font color="#FFFFFF" face="Arial">User</font><font color="#FFFFFF" face="Andale Mono"> </font>
<font face="Andale Mono"><input type="text" name="utente" size="20">  

<font color="#FFFFFF" face="Arial">Password</font><font color="#FFFFFF" face="Andale Mono"> </font>
<input type="password" name="password" size="20">  

<input type="submit" value="   OK   ">
</p>
</form>

</td>
    </tr>
  </table>
  

<? }
if(isset($_POST["utente"])){
if (check($_POST["utente"],$_POST["password"]) And $_SESSION[tentativi] <= 5){
   session_start();
$_SESSION["tentativi"] = 0;
   $_SESSION["utente"] = $_POST["utente"];
   $_SESSION["password"] = $_POST["password"];
   if($_POST["utente"] == "pippo"){include("../pagine_riservate/pippo.php");}
   if($_POST["utente"] == "pepo"){include("../pagine_riservate/pepo.php");}
}else{
$_SESSION[tentativi]++;
   form_login();
   echo "
\n";
   echo "User o Password errati oppure hai esaurito il numero di tentativi a disposizione.
";
echo "Attualmente hai utilizzato ". $_SESSION[tentativi]."tentativi dei 5 a disposizione";
   echo "
\n";
   echo "accesso non eseguito";
}

}else{  
  form_login();
   
}
?> 
  

</body>
</html>
</div>
utenti.php

Codice:
<?
/*
Per aggiungere un nuovo utente scrivere:
 $utenti["nome_utente"] = "password";
Ad esempio, se si vuole aggiungere l'utente mario con password rossi, scrivere:
 $utenti["mario"] = "rossi";
*/
$utenti["pippo"] = "pippo";
$utenti["pepo"] = "pepo";
?>
arrivo al dunque...
quello che non riesco proprio a fare ? un controllo che mi permetta di limitare il numero di tentativi di accesso a 4-5 e quindi far scomparire la maschera di inserimento user e password al cui posto visualizzare un messaggio del tipo NUMERO MASSIMO DI TENTATIVI RAGGIUNTO.

Il problema che si verifica ? che se inserisco i user e pass corretto entra tranquillamente, mentre se inserisco dati non corretti la limitazione al numero di tentativi di accesso non funziona...ossia l'utente pu? provare ad inserire user e pass quante vuole...

Il link in cui provare quello che sto cercamdo di spiegare a parole ?:

parmarealestate.altervista.org

cliccando in area riservata del menu orizzontale.

E poi se fatta in questo modo tale tipo di area riservata ? abbanstanza sicura?

Vi ringrazio in anticipo dell'aiuto che potrete darmi.
Ciao..
Kite
Rispondi citando
  #2 (permalink)  
Vecchio 16-05-2007, 21.35.17
L'avatar di morphey
Administrator
 
Data registrazione: 13-03-2006
Messaggi: 188
morphey ha disabilitato la reputazione
Predefinito

Ciao,

una soluzione ? quella di incrementare una variabile $_SESSION ad ogni tentativo fallito. Quando poi fai il controllo ad ogni login fai stampare l'errore se quella variabile ? uguale a TOT tentativi.
Rispondi citando
Rispondi

Strumenti discussione Cerca in questa discussione
Cerca in questa discussione:

Ricerca avanzata
Modalità visualizzazione

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks are Attivato
Pingbacks are Attivato
Refbacks are Attivato


Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
Area Utenti deejayp Suggerimenti 1 23-12-2006 23.52.45
SSL area Clienti riccardino Suggerimenti 0 13-04-2005 22.08.40
cerco script per accesso area riservata e gestione utenti scorpio26 PHP 8 26-03-2005 10.44.57
domini da area clienti fidelio Suggerimenti 2 07-03-2005 09.45.38
problema inserimento flash in file php attila81 PHP 0 12-03-2004 11.18.17


Tutti gli orari sono GMT +1. Adesso sono le 02.11.09.


Powered by vBulletin versione 3.7.2
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.1.0
Traduzione italiana : www.vbulletin.it