|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: May 2012
Messaggi: 22
|
[PHP] aiuto sulle sessioni PHP
Ciao a tutti... Vorrei sapere come posso fare per bloccare l accesso ad una determinata pagina di un sito agli utenti che non hanno eseguito il login...per esempio, una volta eseguito l accesso l utente verrà reindirizzato ad una pagina, dove potrà vedere le sue info ecc... Tutto normale fino a qui, solo che se scrivo nella barra degli url il percorso per quella pagina l utente che non ha effettuato il login potrà accedere a quella pagina senza pero vedere i sui dati ma potrà vedere solo: nome: , cognome: ecc... Come posso fare per bloccare l' accesso (alle pagine web che deciderò io, es: modificare il profilo, pubblicare una guida, ecc) alle persone che nn hanno effettuato il login???
Grazie in anticipo... Non so proprio come fare |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Nov 2004
Città: Padova
Messaggi: 2342
|
All'inizio delle pagine il cui accesso devi bloccare, puoi inserire, all'inizio del codice qualcosa del tipo:
Codice:
if (!check_user_login()) header("Location: http://www.miosito.it/loginpage.php"); ... //resto del codice della pagina che viene processato/visualizzato solo se il login è stato fatto Codice:
function check_user_login(){ if (isset($_SESSION['userid'])) return true; else return false; } Ma puoi benissimo settare qualsiasi variabile di sessione con qualsiasi valore tu voglia, poi la funzione di check varia di conseguenza. Quando fai il logout, semplicemente cancelli la variabile di sessione o la imposti a un valore che poi tu sai che vuol dire "non loggato".
__________________
CPU Ryzen 2600 @ 3,95Ghz + Bequiet Dark Rock TF / MB Asus X470-F Gaming / RAM 2x8GB DDR4 G.Skill FlareX 3200 CL14 / VGA Sapphire RX 7900 XT Nitro+ @ 3200Mhz / SSD Samsung 970 Pro 512GB + Sandisk 240GB Plus + Sandisk 960GB Ultra II PSU Seasonic Platinum P-660 / Headset Kingston HyperX Flight |
![]() |
![]() |
![]() |
#3 |
Junior Member
Iscritto dal: May 2012
Messaggi: 22
|
ciao.. grazie mille per la risposta... per quanto riguarda questa discussione ho risolto, ma è sorto un altro problema! Mi potresti aiutare?
Allora, vorrei che comparisse il nickname dell' utente loggato, e per fare questo dovrebbe prendere i dati dal database solo che mi da il seguente errore: Resource id #3... Ora ti posto il codice: Codice:
<?php $mail = $_SESSION['mail']; $connessione = mysql_connect("xxx","xxxx","xxxx"); $Db = mysql_select_DB("my_"); $connect= mysql_query("SELECT nickname FROM registrazionin where $mail "); $fetch = mysql_fetch_array($connect); echo $fetch; ?> |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Nov 2004
Città: Padova
Messaggi: 2342
|
Su che riga ti da l'errore?
Comunque la query è sbagliata, dovrebbe essere Codice:
SELECT nickname FROM registrazionin where mail = $mail Comunque non è molto bello selezionare la riga usando la mail come discriminante... tra l'altro è una chiave candidata (unique)? Ha più senso selezionare l'utente in base all'id dello stesso, quindi nella sessione registri l'id e non l'email.
__________________
CPU Ryzen 2600 @ 3,95Ghz + Bequiet Dark Rock TF / MB Asus X470-F Gaming / RAM 2x8GB DDR4 G.Skill FlareX 3200 CL14 / VGA Sapphire RX 7900 XT Nitro+ @ 3200Mhz / SSD Samsung 970 Pro 512GB + Sandisk 240GB Plus + Sandisk 960GB Ultra II PSU Seasonic Platinum P-660 / Headset Kingston HyperX Flight |
![]() |
![]() |
![]() |
#5 |
Junior Member
Iscritto dal: May 2012
Messaggi: 22
|
[RISOLTO]
grazie ho risolto
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 18:18.