[PHP] Differenza tra amministratore e utente

  • Creatore Discussione Creatore Discussione ugo18
  • Data di inizio Data di inizio

ugo18

Nuovo Utente
23 Apr 2019
2
0
1
Salve , sono un programmatore php alle prime armi e ho un problema per il controllo degli accessi.
Ho creato un database e per distinguere gli utenti normali dagli amministratori ho inserito una colonna che si chiama "utente" che viene settato a 1 in caso sia un utente e a 0 per l'amministratore.
Come faccio ad assegnare il valore della cella "utente" alla variabile $utente? Che mi serve per poi indirizzare l'utente su "pagUtente" e l' amministratore su "adminpage"

Questo è il codice che ho impostato fin ora:
PHP:
<?php

session_start();
$error='';

if(isset($_POST['submit'])){
    if(empty($_POST['nomeutente']) || empty($_POST['password'])){
        echo "Nome Utente o Password non inseriti!";
    }
else
    $nomeutente=$_POST['nomeutente'];
    $password=$_POST['password'];
    
    
    $conn = mysqli_connect("localhost","root","","tsw");

    
    
    $query="SELECT nomeutente, password, utente  FROM registrazioni2 WHERE nomeutente='$nomeutente' AND password='$password'  ";
    
    
    $stmt = $conn->prepare($query);
    $stmt->execute();
    $stmt->store_result();
    
    $utente=??;
    
    if($stmt->fetch())
    {
        if($utente==0){
        $_SESSION['login_user'] = $nomeutente;
        header("location: adminpage.php"); 
        }
        if($utente==1){
        $_SESSION['login_user'] = $nomeutente; 
        header("location: pagUtente.php");     
        }
  }
  else{
      echo "Nome Utente e/o Password errati!";
  }
  mysqli_close($conn);
}
?>
 
Prova così:
PHP:
$query = "SELECT nomeutente, password, utente FROM registrazioni2 WHERE nomeutente='$nomeutente' AND password='$password' ";
$get_utente=mysql_fetch_assoc($query);
$utente = $get_utente['utente'];
if($utente==0){
        $_SESSION['login_user'] = $nomeutente;
        header("location: adminpage.php");
        }
        elseif($utente==1){
        $_SESSION['login_user'] = $nomeutente;
        header("location: pagUtente.php");     
        }
  else{echo "Nome Utente e/o Password errati!";
  }
Però non sono sicuro di aver capito bene il problema
 
Provo a spiegarmi meglio allora:
In questo sito devo avere una pagina in cui può accedere solo l'amministratore e una pagina su cui possono accedere tutti gli utenti registrati.
Per fare la distinzione tra amministratori e utenti ho inserito nella query un campo "utente" che viene settato a 0 per gli amministratori e a 1 per gli utenti registrati.(Ho inserito un' immagine per essere più chiaro)
Quando vado a effettuare il log-in , in entrambi i casi però mi indirizzano al primo header, quindi alla pagina "adminpage.php".
Anche provando il codice di Tommy03 ho lo stesso problema..
 

Allegati

  • databsesito.png
    databsesito.png
    38,9 KB · Visite: 384

Discussioni simili