login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Hulp: inloggen

Offline cyber78 - 01/03/2006 10:56
Avatar van cyber78Nieuw lid Beste,

Heb het loginscript van Fangor doorgespit en denk dat het voor mijn site te gebruiken is. Alleen: wanneer ik op de knop klik, ververst de pagina alleen en laat niet zien dat ik ben ingelogd. Ziet iemand iets in de code?

  1. <?php
  2. require("connect.php"); // connectie met database maken en database selecteren
  3. session_start(); // start een sessie of zet een sessie voort
  4.  
  5. // controleer hier of iemand inlogt - dit moet _voor_ de <HTML>-tag gebeuren gebeuren
  6. if(isset($_POST['login'])) {
  7. if(trim($_POST['naam']) <> "" && trim($_POST['wacht']) <> "") {
  8. // naam en wachtwoord zijn ingevuld. Haal het (versleutelde) wachtwoord en
  9. // het gebruikersniveau dat bij deze gebruikersnaam hoort uit de database op
  10. // en vergelijk dit wachtwoord met het in het formulier opgegeven wachtwoord.
  11.  
  12. $naam = $_POST['naam'];
  13. $wacht = md5($_POST['wacht']);
  14. $res = mysql_query("SELECT id, pass, level FROM users where name='".$naam."'") or die(mysql_error());
  15.  
  16. // Als er een resultaat is, oftewel er bestaat een gebruiker met de naam $naam
  17. if(mysql_num_rows($res) > 0) {
  18. $row = mysql_fetch_assoc($res);
  19. // aanname: het wachtwoord in de database is eenmalig gehashed mbv de functie md5()
  20. // vergelijk het opgehaalde wachtwoord met een versleutelde versie van het in het
  21. // formulier opgegeven wachtwoord
  22. if(!strcmp($wacht, $row['pass'])) {
  23. // alle gegevens kloppen
  24.  
  25. // v1.2 extra functionaliteit, onthouden login
  26. // wil de gebruiker zijn gegevens onthouden ?
  27. if(isset($_POST['memory'])) {
  28. // set cookie (voor 2 maanden) en onthoud het IP
  29. // gebruik hierbij het id van de gebruiker
  30. setcookie("login_cookie", $row['id'].";".$row['pass'], time()+3600*24*31*2, "/");
  31. $ip = $_SERVER['REMOTE_ADDR'];
  32. mysql_query("UPDATE users SET last_ip='".$ip."' WHERE id=".$row['id']) or die(mysql_error());
  33. }
  34.  
  35. // vul sessievariabelen
  36. $_SESSION['suser'] = $naam; // gebruikersnaam van ingelogd persoon
  37. $_SESSION['slevel'] = $row['level']; // bijbehorende gebruikersniveau
  38. $_SESSION['stime'] = time(); // de huidige tijd
  39. $_SESSION['smaxidle'] = 60 * 60; // het aantal seconden inactiviteit
  40. } else {
  41. // wachtwoorden komen niet overeen, breek de sessie weer af
  42. $_SESSION = array();
  43. }
  44. // geef de resultaten van deze query weer vrij
  45. unset($row);
  46. }
  47. // ververs, of de gebruikersnaam/wachtwoord combinatie nou klopt of niet, de pagina
  48. header("Location: login.php");
  49. }
  50. }
  51. ?>
  52. <html>
  53. <head>
  54. <title>dutchbty.nl | Inloggen Distributor Zone</title>
  55. <link href="stile_bty06.css" rel="stylesheet" type="text/css">
  56. </head>
  57.  
  58. <body>
  59. <?php
  60. // als de (een willekeurige) sessievariabele suser in het sessie-array nog geen waarde heeft
  61. // (dus als iemand nog niet is ingelogd)
  62. if(!isset($_SESSION['suser'])) {
  63. ?>
  64. <table width="750" height="100%" border="0" cellpadding="0" cellspacing="0">
  65. <tr>
  66. <td width="30" height="100%" align="left" valign="top">&nbsp;</td>
  67. <td align="left" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0">
  68. <tr>
  69. <td>
  70. <?php include ("top_home.php"); ?>
  71. </td>
  72. </tr>
  73. <tr>
  74. <td height="30">&nbsp;</td>
  75. </tr>
  76. <tr>
  77. <td align="left" valign="top">
  78. <form action="login.php" method="post">
  79. <table class="LoginForm" width="100%">
  80. <tr>
  81. <td width="200">&nbsp;&nbsp;&nbsp;&nbsp;INLOGGEN OP DZ</td>
  82. <td width="200">&nbsp;Naam
  83. <input name="naam" type="text" id="naam" size="15"></td>
  84. <td width="200">&nbsp;Wachtwoord
  85. <input name="wacht" type="password" id="wacht" size="15"></td>
  86. <td width="100"><input name="submit" type="submit" id="submit" value="login"></td>
  87. </tr>
  88. </table>
  89. </form>
  90. <?php
  91. } else {
  92. // de gebruiker is ingelogd - geef een welkomstboodschap oid
  93. // hier kun je tevens kijken of alle sessievariabelen de goede
  94. // waarden hebben (debugging)
  95. ?>
  96. Hi <b><?= $_SESSION['suser'] ?></b>,<br />
  97. <a href="voorbeeld.php">voorbeeld pagina</a><br />
  98. <a href="logout.php">uitloggen</a><br />
  99. <?php
  100. }
  101. ?>
  102. </body>
  103. </html>

2 antwoorden

Gesponsorde links
Offline gothmog - 01/03/2006 11:04
Avatar van gothmog Lid op lijn 88 heb je:
<input name="submit" type="submit" id="submit" value="login">

name="submit"

als ik weer naar boven ga zie ik nergen if(isset($_POST['submit']))
wel if(isset($_POST['login'])) op lijn 6

die 'login' moet je veranderen naar 'submit'
Offline cyber78 - 01/03/2006 11:12
Avatar van cyber78 Nieuw lid :o wtf: thanks... een aanpassing van mezelf die ik niet heb doorgevoerd.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.206s