Dans ma base de données, chaque utilisateur se voit attribuer un niveau d'accès de 1 ou 2 pour montrer à l'utilisateur sur dash.php certains contenus et en restreindre d'autres. Je voulais récupérer les données $ _POST ['access'] et mettre $ _SESSION ['access'] à égalité.
$SQL = "SELECT * FROM users WHERE username=$username AND password=md5($password)";
$result = mysql_query($SQL);
$num_rows = mysql_num_rows($result);
if(!empty($num_rows)){
while($row=mysql_fetch_assoc($result)){
$access = $_POST['access'];
}}
if ($result) {
$_SESSION['access'] = $access;
$_SESSION['username'] = $username;
}
Au lieu de cela, je reçois array (2) {[ "accès"] => NULL [ "nom d'utilisateur"] => string (4) " 'user'". Quelqu'un pourrait-il m'expliquer comment faire? Après que cela fonctionne comme si je devais promettre que je vais convertir tout le site en mysqli, c'est juste que j'apprends et c'est juste à l'endroit où j'ai commencé. Pourquoi avez-vous interrogé la base de données lorsque vous n'utilisez pas les données?
Veuillez ne pas utiliser les fonctions MD5 ou myqsl_ * .. MD5 est cassé. A été pendant des années, et les fonctions mysql_ * sont dépréciées et ne devraient pas être utilisés pour le nouveau code, utilisez MySQli ou PDO comme des alternatives –
Pourquoi leur permettez-vous d'afficher l'accès? –
Je ne leur permets pas d'afficher l'accès, dans ce bloc, je récupère l'accès de la poste pour l'utilisateur de leur rangée. – redappleorigin