Salve a tutti.
Sto impazzendo con l'area riservata.
Vi scongiuro aiutatemi
Vorrei solo creare una semplice area privata che usa i file per immagazzinare i dati e che mi permetta di entrare nella pagina personale di ogni utente.
Ho prvato vari script...ma niente l'unico che mi funziona ve lo posto, ma ovviamente ho un problema (e quanto mai).
Cmq mi spiego: nella home ci sta un campo nome utente e password. Siccome ogni utente ha la propria home il cui file coincide con nome utente in questo script, per semplicità, uso una variabile USER che mi fa andare diettamente alla pagina dell'utente.
Il problema è che nn ci sta nessun controllo nella pagina personale dell'utente, quindi ci arriverei anche se scrivo l'url nella barra degli indirizzi. E poi ci sta un altro problema che si presenterà dopo! Nella pagina privata poi ci saranno due link ai quali può accedere solo l'utente privato ma senza ridigitare la password.
In pratica, dato questo semplice script (che mi funziona quindi vorrei evitare di provarne altri) come metto un controllo nella pagina personale dell' utente(ho visto un codice che fa sto controllo ma nn saprei come implementare la mia variabilie...cmq vi posto tutto)? E come li imposto poi i link in modo che possa andarci solo l'utente senza ridigitare user e password?
Per piacere nn ditemi che è meglio usare db o sessioni o coockie...vorri solo implementare un controllo nella pagina privata e basta.
area_riservata.php
Codice PHP:
<?php
// questo script è stato creato da Ruto di [url]www.pierotofy.it[/url]
// [url]www.lotenzo.3000.it[/url] [url]www.avsp.altervista.org[/url]
// in_array è una funzione che cerca un determinato valore nell'array
// array_search ti dice in che key ( o ondici) è situato un valore nell'array
$data=date("m.d.y, H:i:s");
$user=$_POST['user'];
include('database.php');
if(in_array($_POST['user'],$datauser)){
$valuser= 1;
$chiaveuser = array_search($_POST['user'], $datauser);
}
if(in_array($_POST['password'],$datapassword)){
$valpassword= 1;
$chiavepassword = array_search($_POST['password'], $datapassword);
}
$valsomm= $valuser+$valpassword;
if(($valsomm==2)&&($chiavepassword==$chiaveuser)){
// cambia home.htm con il percorso e il nome della pagina a cui andare
// un volta effettuato il login con successo
header("Location: [url]http://www.miosito.com/utenti/[/url]$user.php");
//-----------------------------------
}else{
//invece qui ci devi mettere la pagina a che da errore nell inserimento del login
header("Location: [url]http://www.miosito.com/loginerr.htm[/url]"); }
?>
database.php Il database degli utenti...un pochino disordinato però secondo me
Codice PHP:
<?
//Per chi lo ha scaricato: inserisci qui i nomi degli utenti
$datauser = array(lorenzo,marco,matteo);
//Qui le password
$datapassword = array(lorenzo,marco,matteo);
//ricordati che lil primo nick va con la prima password o cosi via
?>
un esempio di controllo di un altro script al posto di SESSION penso che dovrei testare $VALSOMM del file area_riservata...ma come?
Codice PHP:
<?php
//Pagina protetta: deve iniziare con questo codice
session_start();
if(isset($_SESSION['ok']) and $_SESSION['ok']==1){
//L'utente è già loggato
?>
<?php
}
else{
//L'utente non è loggato, lo mando alla pagina di login
header("Location: login.php");
exit;
}
?>