17. april 2006 - 14:39Der er
22 kommentarer og 2 løsninger
login tjek problem
jeg kan bare ikke få dette script til at tjekke om brugeren der logger ind er Admin eller Co-admin
jeg bruger denne stump kode til at tjekke om brugeren er logget ind
<?
require("db_ind.php"); $passquery = mysql_query("SELECT password FROM profiler WHERE username = '$username'"); if (!mysql_num_rows($passquery)) { echo "Du er ikke logget ind"; } else {
tak for det .. men hvad gør jeg så ved de bruger som ikke er admin men bare almindelige bruger ?
for fjerner jeg min Admin rank som får jeg bare af vide jeg ikke er logget ind selv om jeg er logget ind og kan tjekke/rette i min egen profil ? men logger jeg ud og prøver at tjekke/rette i min profil kan jeg ikke få lov og det er også rigtig nok
Når du benytte || så er det enten den ene eller den anden der skal være true for at if'en bliver godkendt. I dette tilfælde var $dbpassword == $password true, og if'en er derfor ligeglad med om din status er admin.
Som jeg har lavet det oven for, så sætter den $login = (true); når passwordet er rigtigt, men skriver kun til brugeren at han er admin hvis $status == "Admin"
alternativt kan du bruge det første jeg skrev, men der vil brugeren blive afvist hvis han ikke er admin.
ja jeg vil helst bruge den med så man ikke bliver afvist hvis man ikke er admin .. men s jeg har fået den til at virke med at vise ( du er Admin ) men hvis jeg nu tager min Co-Admin $row = mysql_fetch_array($passquery); $dbpassword = $row["password"]; $status = $row['rank']; if($dbpassword == $password)
{ $login = (true); if ($status == "Co-Admin") {
echo "Du er Co-Admin"; } Så virker den ikke .. den skriver ingen ting ..
Har du ikke et felt i din db, som angiver om man er admin, co-admin eller almindelig bruger? Så kunne jo jo trække det med ud af din db, og sætte hvor du nu sætter den værdi!
For umiddelbart burde det virke.. Men prøv eventuelt som nedenfor...
if (lcase($status) == lcase("Admin")) { echo "Du er logget ind som admin"; } elseif(lcase($status) == lcase("Co-Admin")) { echo "Du er Co-admin"; } else { echo "Du er logget ind som bruger"; }
i min database har jeg lavet at når en bruger bliver oprettet får han/hun Rank som Bruger men jeg har selv sat min egen bruger til Admin og en af mine venner som Co-Admin som værdi
Leger vidst lidt for meget med VBScript for tiden...
if (strtolower($status) == strtolower("Admin")) { echo "Du er logget ind som admin"; } elseif(strtolower($status) == strtolower("Co-Admin")) { echo "Du er Co-admin"; } else { echo "Du er logget ind som bruger"; }
jeg skal bruge rank´en til min bruger menu så at når man er admin får man admin menu frem og når man ikke er er der kun almindelig menu der kommer frem så den skal jo gå ind og tjekke i db om man er bruger eller admin /Co-admin og vide det indhold der skal være sat til de forskellige Ranke
en bruger logger ind... Tjekker om brugernavn og kodeord matcher 1 bruger i vores db, gør den det, så gemmer vi status og evt brugernavn/id i en session:
if (strtolower($var) == strtolower("Admin")) { echo "Du er logget ind som admin"; $status = "Admin"; } elseif(strtolower($var) == strtolower("Co-Admin")) { echo "Du er Co-admin"; $status = "Co-Admin"; } else { echo "Du er logget ind som bruger"; $status = "Bruger"; } }
Så ville jeg nok gøre noget i stilen af ovenstående.. Men er enig med Jakob i at det er bedre at benytte et tal som identifikation af brugertype og på den måde så hive informationen ud...
no problem .. har fået lavet et nyt login sys af en kami som jeg bruger i stedet men point skal i have for hjælpen selv om jeg ikke fik det til at virke .. har opretter et nyt spm om et andet problem jeg har nu .. typisk mig at fucke det hele op
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.