Afisare nivel aces user in script logare
Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
-
Stefan
- Mesaje: 117
Afisare nivel aces user in script logare
Lucrez la un site cu login/register etc, dar am o mica problema. Cum fac ca, atunci cand intru pe cont -> profil sa imi afiseze daca acel user este admin sau nu, am incercat cu urmatorul cod dar imi afiseaza accesele de la toate conturile.
Cod: Selectaţi tot
<?php
include "../bazadb.php";
$res = $conn->query("select * from utilizatori");
while ($row = $res->fetch_assoc()) {
?>
<td><?php echo $row['acces']; ?></td>
<?php
if($acces > 0) {
echo 'esti admin';
} else {
echo 'nu esti admin';
}
}
?>
Cum fac ca sa imi afiseze accesul de la contul respectiv ? P.s script-ul pentru login il am de aici.
MarPlo
Mesaje: 4343
Salut
Nu stiu despre ce script e vorba, dar Selectul trebuie facut in functie de utilizatorul logat, retinut in sesiune.
Acum depinde in ce sesiune e retinut, ce anume (ID user sau Nume), si denumirea coloanei din tabel. Stiind astea, se face select-ul ca in acest exemplu:
Cod: Selectaţi tot
$res = $conn->query("select * from utilizatori WHERE coloana_user ='". $_SESSION['user'] ."' LIMIT 1");
royal27
Mesaje: 79
aici e problema
Cod: Selectaţi tot
$res = $conn->query("select * from utilizatori");
o modifici dupa id-ul care il ai in baza de date,exact asa
Cod: Selectaţi tot
id= $_GET["id"];
$res = $conn->query("select * from utilizatori where id=".$id."");
daca ai la link ceva gen "index.php?name=test"
atunci vine asa
Cod: Selectaţi tot
name= $_GET["name"];
$res = $conn->query("select * from utilizatori where name=".$name."");
Stefan
Mesaje: 117
Mersi mult, dar acum, daca nu sunt logat imi apare asta
EROARE:
Cod: Selectaţi tot
Notice: Undefined index: nume in C:\Program Files\xampp\htdocs\me\loginpage.php on line 100
Line 100:
Cod: Selectaţi tot
$res = $conn->query("select * from utilizatori WHERE nume ='". $_SESSION['nume'] ."' LIMIT 1");
P.S cand intru pe cont imi afiseaza totul corect
MarPlo
Mesaje: 4343
Inainte de a face select-ul cu sesiunea, verifici daca acea sesiune exista:
Cod: Selectaţi tot
<?php
include "../bazadb.php";
if(isset($_SESSION['nume'])){
$res = $conn->query("select * from utilizatori WHERE nume ='". $_SESSION['nume'] ."' LIMIT 1");
while($row = $res->fetch_assoc()){
if($row['acces'] > 0){
echo 'esti admin - access: '. $row['acces'];
} else {
echo 'nu esti admin - access: '. $row['acces'];
}
}
}