Due Login con stessa password

filomeni

Moderatore
Membro dello Staff
MOD
14 Mag 2006
1.055
6
38
54
Roseto degli Abruzzi (TE)
www.sitiweb.cloud
Salve ho un problema, vorrei che all'interno dell'area privata, quando l'utente si logga possa accedere ad un pannello di controllo con una password uguale a quella del Login dell'area privata.
Dunque, quando l'utente si logga cliccando su un tasto si lancia un programma PHP per copiare un'intera directori, alla fine della copia c'è un redirect su un accesso tramite password.
L'accesso al pannello di controllo avviene tramite una password impostata su un file di configurazione:
Codice:
require_once("../config.php");
Dovrei trovare il sistema per far scrivere all'interno di questo file config.php la password richamata dal DB con l'apposita query.
Nel secondo login per accesso al pannello di controllo le variabili vengono ripulite, quindi le riporto con un GET, ma non basta perchè il file config.php non le riceve.
Ho provato quindi con una sessione:
Codice:
session_start();

function miSonoLoggato($email)
{
    $_SESSION['email'] = $email;
}

function sonoLoggato()
{
    if (isset($_SESSION['email']) && $_SESSION['email']!='') {
        return true;
    }
    
    header("Location: http://www.e-bookartist.com/index.php");
    
    
    return false;
}

function logout()
{
    session_destroy();
}
ma in questo caso mi da errore che riporto:
Fatal error: Cannot redeclare miSonoLoggato()

Ciedo aiuto... non ne esco
Grazie Maurizio
 
Visto che sono le 5.07 mi sono imbattuto in una ricerca trovando un codice molto semplice :

PHP:
<?php
session_start(); //inizio la sessione
//includo i file necessari a collegarmi al db con relativo script di accesso
include("connessione_db.php");
 
//variabili POST con anti sql Injection
$username=mysql_real_escape_string($_POST['username']); //faccio l'escape dei caratteri dannosi
$password=mysql_real_escape_string(sha1($_POST['password'])); //sha1 cifra la password anche qui in questo modo corrisponde con quella del db
 
 $query = "SELECT * FROM users WHERE username = '$username' AND password = '$password' ";
 $ris = mysql_query($query) or die (mysql_error());
 $riga=mysql_fetch_array($ris);  
 
/*Prelevo l'identificativo dell'utente */
$cod=$riga['username'];
 
/* Effettuo il controllo */
if ($cod == NULL) $trovato = 0 ;
else $trovato = 1;  
 
/* Username e password corrette */
if($trovato === 1) {
 
 /*Registro la sessione*/
  session_register('autorizzato');
 
  $_SESSION["autorizzato"] = 1;
 
  /*Registro il codice dell'utente*/
  $_SESSION['cod'] = $cod;
 
 /*Redirect alla pagina riservata*/
   echo '<script language=javascript>document.location.href="privato.php"</script>'; 
 
} else {
 
/*Username e password errati, redirect alla pagina di login*/
 echo '<script language=javascript>document.location.href="index.php"</script>';
 
}
?>

PER LE PAGINE CHE DEVONO ESSERE PROTETTE

PHP:
<?php
session_start();
//se non c'è la sessione registrata
if (!session_is_registered('autorizzato')) {
  echo "<h1>Area riservata, accesso negato.</h1>";
  echo "Per effettuare il login clicca <a href='index.php'><font color='blue'>qui</font></a>";
  die;
}
 
//Altrimenti Prelevo il codice identificatico dell'utente loggato
session_start();
$cod = $_SESSION['cod']; //id cod recuperato nel file di verifica
?>

Come vedi il codice e commentato. Se ci sono problemi chiedi senza problemi queste sono cavolate :]
 

Discussioni simili