Problema SESSION e LOGIN

anastasi.fr

Nuovo Utente
4 Apr 2013
1
0
0
Ciao a tutti, vi mostro i file che sto usando e poi vi spiego dove sta il problema...

1-FILE configuraammdip.php
PHP:
<?php

function connect(){

mysql_connect("localhost", "root", "");
mysql_select_db("sito");

}


?>

2-FILE headerammdip.php

PHP:
<?php

include 'configuraammdip.php';
connect();
session_start();

?>

3-FILE loginammdip.php

PHP:
<?php

include 'headerammdip.php';

?>
<form name="form1" method="post" action="accedialcontrollo.php">
<table width="95%" align="center" >
<tr>
<td colspan="2"><div align="center"><strong>Accesso privato per i Dipendenti</strong></div></td>
</tr>
<tr>
<td><strong>Username</strong></td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td><strong>Password </strong></td>
<td><input type="text" name="password"></td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<td colspan="2"><div align="center">
<input type="submit" name="Submit" value="Accedi">
</div></td>
</tr>
</table>
</form>

4-FILE accedialcontrollo.php

PHP:
<?php
$user=$_POST["username"];
$pass=$_POST["password"];
if($user=='admin' && $pass=='admin'){
header("Location: paginaamministratore.php");
}
elseif($user=='dipendente' && $pass=='dipendente'){
header("Location: paginadipendente.php");
}
else{echo"non sei un dipendente";
header( "refresh:3;url=index.php" );
}

?>

praticamente c'è un problema, dopo aver letto la teoria non ho capito come usare bene le session.Infatti le pagine paginaamministratore.php e paginadipendente.php sono raggiungibili anche senza fare il login.Il mio scopo sarebbe vietare quelle pagine a chi non fa il login.
Potreste modificare questi file cosi che possa capire??

VI ringrazio in anticipo.....
 
Ultima modifica di un moderatore:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
intanto, secondo me, l'istruzione session_start è meglio metterla direttamente nella pagina dove usi le sessioni, ricordati che deve essere la prima istruzione: nemmeno uno spazio prima.
poi dove fai il controllo e reindirizzi crei le sessioni

PHP:
<?php
session_start();
$user=$_POST["username"];
$pass=$_POST["password"];
if($user=='admin' && $pass=='admin'){
	//poi qui valorizzi la sessione dell'amministratore
	$_SESSION['admin']="admin";
	//se l'admin puo entrare anche nella pag del dipendente valorizzi anche la sua sessione
	$_SESSION['dipendente']="dipendente";
	header("Location: paginaamministratore.php");
	exit();//ti conviene aggiungere anche questa
}elseif($user=='dipendente' && $pass=='dipendente'){
	//oppure qui valorizzi la sessione del dipendente
	$_SESSION['dipendente']="dipendente";
	//per sicurezza distruggi eventuale sessione dell'admim
	if(isset($_SESSION['admin'])){unset($_SESSION['admin']);}
	header("Location: paginadipendente.php");
	exit();
}else{
	//echo"non sei un dipendente";//attento questa da errore nell'header (anche header non vuole output html)
	//qui distruggi per sicurezza eventuali sessioni presenti
	if(isset($_SESSION['admin'])){unset($_SESSION['admin']);}
	if(isset($_SESSION['dipendente'])){unset($_SESSION['dipendente']);}
	//header( "refresh:3;url=index.php" );
	header( "location: index.php" );//meglio questa
	exit();
}
?>
poi nelle due pagine
1) paginaamministratore.php
PHP:
<?php
session_start();
if(!isset($_SESSION['admin'])){//verifichi che la sessione esista
	// non esiste
	header( "location: index.php" );
	exit();
}
//e qui fai quello che devi fare
?>
2)paginadipendente.php
PHP:
<?php
session_start();
if(!isset($_SESSION['admin'] && !isset($_SESSION['dipendente'])){//verifichi che le sessioni non esistano
	// non esistono
	header( "location: index.php" );
	exit();
}
//e qui fai quello che devi fare
?>

spero di essere stato chiaro, eventualmente chiedi
 
Discussioni simili
Autore Titolo Forum Risposte Data
G [PHP] Problema - Warning: session_start() [function.session-start] PHP 9
N Problema con le SESSION PHP 6
P problema salvataggio e richiamo SESSION PHP 0
Emix Problema Session PHP 1
G problema con session.gc_maxlifetime PHP 3
T problema con le session PHP 3
M problema con Session PHP 3
M Problema con l'utilizzo delle Session PHP 3
foki problema misterioso session ID PHP 30
G problema con session.cookie_lifetime PHP 1
P problema sessioni php [function.session-start] PHP 2
A problema con Session Classic ASP 4
I Sto progettando nuovi siti utilizzando bootstrap e devo dire funziona bene, l'unico problema e la maschera -moz- HTML e CSS 0
K Problema form update PHP 2
O problema con dvr dahua xvr5116 IP Cam e Videosorveglianza 0
S Problema nel ciclare un json Javascript 0
G Problema con Xampp Web Server 1
andrea barletta Problema con miniature comandi Photoshop 0
I problema con alice Posta Elettronica 0
K Problema Inner join PHP 1
F firefox problema http Linux e Software 0
N Problema con position absolute e overflow HTML e CSS 4
E Problema jquery Success jQuery 2
L Problema con inner join PHP 11
K [php] Problema con inner join PHP 4
E problema selezione sfumata Photoshop 2
K [PHP] Problema con variabili concatenate. PHP 1
A Problema filtro fluidifica Photoshop Photoshop 1
H Problema Bordi Scontorno Photoshop 1
O problema con query PHP 4
R Problema installazione Realtek WiFi USB rtl8821 Reti LAN e Wireless 1
I problema con 2 account Posta Elettronica 1
L problema collegamento file css con html HTML e CSS 1
Y Problema percorso file in rete PHP 1
N Problema SEO "L'URL non si trova su Google" SEO e Posizionamento 4
E Problema accesso a file con app sviluppata con MIT APP INVENTOR 2 Sviluppo app per Android 0
P Problema acquisizione clienti Webdesign e Grafica 1
F NetBeans problema creazione progetto Java Windows e Software 0
M Problema con Try Catch PHP 0
C problema seo + cerco esperto SEO e Posizionamento 11
Sergio Unia Problema con gli eventi del mouse su una data table: Javascript 2
T PROBLEMA CON SESSIONI PHP 3
A Problema, non so, di scale() o transform, oppure altro? HTML e CSS 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
R problema con else PHP 0
T PROBLEMA CON ARRAY PHP 8
L problema con query select PHP 2
R Problema query con ricerca id numerico PHP 2
F Problema con risposta PHP 0
S problema con recupero dati tabella mysql PHP 2

Discussioni simili