Bonjour, je cherche à savoir si c'est possible de créer une variable en lui donnant un nom récupéré dans une base, pour vérifier ensuite si elle existe déjà ou pas ?
Je m'explique :
1. un utilisateur arrive sur mon site en entrant son login. Lui sont alors associés divers droits, par exemple je lui donne le droit musique ainsi $varDroit_Musique = true;.
2. il se balade sur les pages, certaines sont accessibles selon les droits. La page index.php?page=musique par exemple n'est ouverte qu'à l'utilisateur ayant le droit $varDroit_Musique = true;.
3. j'ai une base qui contient en colonne "page" les $_GET['page'] et en colonne "droit" les droits qui autorise l'accès (par exemple on trouve page = musique et droit = varDroit_Musique).
4. mon problème est là : l'utilisateur dispose d'une variable $varDroit_Musique puisque son login lui donne le droit. Je veux faire un if ($varDroit_Musique) { // accès autorisé } mais sans avoir à entrer manuellement le nom de la variable, c'est à dire prendre la valeur varDroit_Musique et l'interpréter comme une variable.
J'ai fait ceci mais sans succès :
Dans cet exemple je tente de faire interpréter ${$varDroitPage['droit']} comme $varDroit_Musique. J'espère avoir été clair.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $varDroitPage = mysql_fetch_assoc(mysql_query("SELECT * FROM droits_page WHERE page='" . $_GET['page'] . "'")); if (${$varDroitPage['droit']}) { echo 'Le code donne accès à cette page'; };
Merci d'avance.
Partager