Autor Zpráva
MS.
Profil *
Mám tabuľku s užívateľmi, kde mám určené meno,heslo...a hodnosť daného užívateľa. Potom mám stránku admin.php, ktorú chcem zobraziť iba užívateľom s hodnosťou admin v DB. Zatiaľ mám tento kód, no presmeruje ma to na index.php v každom prípade, je jedno či som prihlasený alebo nie.

<?php
session_start();

include "conn.php";
$result = $con->query("SELECT meno FROM ludia WHERE hodnost='admin'");

if($result!="admin"){           /* admin je moje meno v databázi */
header('Location: index.php');
}
?>
Keeehi
Profil
1. ten dotaz je logicky špatně. Ty chceš ověřit, zda daný uživatel ma danou hodnost. Vhodnější by tedy bylo:
"SELECT 1 FROM ludia WHERE hodnost='admin' AND meno='$username'"

No a podmínka by vypadala
if($result->num_rows != 1)

Také by to samozřejmě šlo
"SELECT hodnost FROM ludia WHERE meno='$username'"
a
$row = $result->fetch_assoc()
if(!$row or $row['hodnost'] != 'admin')
MS.
Profil *
Keeehi:
Použil som tu druhú metódu a všetko funguje ako má, vďaka.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: