login  Naam:   Wachtwoord: 
Registreer je!
 Forum

login met niveaus

Offline Dierre - 11/07/2006 01:01
Avatar van DierreMySQL interesse ik ben een loginsysteem aan het maken en zou daar graag 3 verschillende niveaus in krijgen... dit is met al voor een stukje gelukt...

bij het niveau 1 zou er slecht 1 pagina beschikbaar mogen zijn...
bij niveau 2 zou dat die eerste pagina en nog een nieuwe pagina moeten zijn
en bij niveau 3 zouden dat de pagina's van de eerste twee plus nog een derde pagina zijn...

nu is mijn vraag hoe ik de beschikbaarheid van die pagina's kan maken... hoe bv pagina 3 bij een login van niveau 2 niet mag beschikbaar zijn, maar bij een login van niveau 3 moeten wel pagina 1 en 2 en 3 beschikbaar zijn...

hopelijk stel ik mijn vraag een beetje goed zodat je die toch enigsinds wat begrijpt...

hieronder zet ik ff mijn stukje code dat ik al heb gemaakt voor mijn login....
mijn probleem situeert zich rond regel 15 waar ik mijn switch maak... in die switch kan ik al zien met welk niveau er is ingelogd...

  1. <?php
  2. include("connectie.php");
  3.  
  4. $fout = array();
  5.  
  6. if(isset($_POST["inloggen"]))
  7. {
  8. $sql = "select * from login where naam = '".$_POST["login"]."' and wachtwoord = '".md5($_POST["wachtwoord"])."'";
  9. $rs = mysql_query($sql);
  10. if(mysql_num_rows($rs) > 0)
  11. {
  12. $rij = mysql_fetch_array($rs);
  13. $_SESSION["ingelogd"] = $rij["catid"];
  14. switch($_SESSION["ingelogd"])
  15. {
  16. case 1 : //toegang tot pagina 1 en niet tot 2 en 3;
  17. break;
  18. case 2 : //toegang tot pagina 1 en 2 en niet tot 3;
  19. break;
  20. case 3 : //toegang tot pagina 1, 2 en 3;
  21. }
  22. }
  23. else
  24. {
  25. $fout["login"] = "Mislukt";
  26. }
  27. }
  28. ?>
  29. <html>
  30. <head>
  31. <title>Untitled Document</title>
  32. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  33. </head>
  34.  
  35. <body>
  36. <form name="form1" method="post" action="<?php echo($_SERVER['PHP_SELF']); ?>">
  37. <table width="50%" border="1" cellspacing="0" cellpadding="0">
  38. <tr>
  39. <td>Login</td>
  40. <td><input type="text" name="login"></td>
  41. </tr>
  42. <tr>
  43. <td>Paswoord</td>
  44. <td><input type="text" name="wachtwoord"></td>
  45. </tr>
  46. <tr>
  47. <td>&nbsp;</td>
  48. <td><input type="submit" name="inloggen" value="Inloggen"></td>
  49. </tr>
  50. </table>
  51. <?php
  52. echo($fout["login"]);
  53. ?>
  54. </form>
  55. </body>
  56. </html>


TIA
Dierre

2 antwoorden

Gesponsorde links
Offline Ultimatum - 11/07/2006 01:16 (laatste wijziging 11/07/2006 01:47)
Avatar van Ultimatum PHP expert je moet een rij level of hoe je het hebt genoemd vergelijken met 1, 2, 3 en dan doorsturen

dus if($rij['level'] == 1)
{
//pagina1
}
elseif($rij['level'] == 2)
{
//pagina2
}
etc..

nog niets, je kijkt helemaal niet of het wachtwoord goed is ingevuld , want als ik nu jou gebruikersnaam invoer en hij is goed dan word je al gelijk doorgestuurd

je moet dus ook zoiets doen:

  1. <?php
  2. if($rij['wachtwoord'] == $_POST['wachtwoord'])
  3. {
  4. //goed
  5. }
  6. else
  7. {
  8. //fout
  9. }
  10. ?>


edit:
  1. <form name="form1" method="post" action="<?php echo($_SERVER['PHP_SELF']); ?>">

is precies hetzelfde als
  1. <form name="form1" method="post" action="">


edit: ik zag het wachtwoord niet in de where query, mijn fout 
Offline Dierre - 11/07/2006 01:22 (laatste wijziging 11/07/2006 01:23)
Avatar van Dierre MySQL interesse om 3 keer een verschillende pagina te hebben vind ik het ook en dat is niet het probleem.
het probleem is om met vb de session die gestart wordt via niveau 2, twee pagina's te kunnen bekijken en de derde dan niet...
als je begrijpt wat ik bedoel...

Of moet ik die controle dan effectief gaan doen op die desbetreffende pagina's en hier gewoon mijn session bepalen?

oja en het wachtwoord wordt hier toch wel gecontroleerd hoor... als ik een verkeerd wachtwoord intyp met een correcte login, dan kan ik niet inloggen...
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2026 Sitemasters.be - Regels - Laadtijd: 0.216s