login  Naam:   Wachtwoord: 
Registreer je!
 Forum

loginfout

Offline simontjeuh - 04/06/2005 11:09 (laatste wijziging 04/06/2005 11:10)
Avatar van simontjeuhHTML interesse ik heb een script om in te loggen (bedankt aan FangorN)
maar dit blijkt niet goed te werken...
hier ff een deel
  1. <?
  2. require("config.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: index2.php");
  49. }
  50. }
  51. ?>
  52. <!-- verderop vind je dit -->
  53. <form action="index.php" method="post">
  54. Username <input type="text" name="naam" size="15"><br />
  55. Password <input type="password" name="wacht" size="15"><br />
  56. <!-- v1.2 extra functionaliteit, login onthouden -->
  57. <input type="checkbox" name="memory" value="1"> Remember login<br />
  58. <input type="submit" name="login" value="Login &raquo;"><br />
  59. </form>

dus er wordt met een header verwezen naar index2.php
hier ff een stukje daaruit
  1. <?
  2. require('config.php');
  3.  
  4. if(!isset($_SESSION['suser'])) {
  5. echo "FOUT!! Uw gebruikersnaam en/of wachtwoord is/zijn verkeerd";
  6. } else {
  7. // alle tekst enzo
  8. ?>


Maar als ik inlog krijg ik steeds de fout dat gebruikersnaam en/of fout is

7 antwoorden

Gesponsorde links
Offline prorsoft - 04/06/2005 11:17
Avatar van prorsoft PHP gevorderde probeer eens dit:
  1. <?
  2. require('config.php');
  3.  
  4. if(!isset($_SESSION['suser']) || empty($_SESSION['suser'])) {
  5. echo "FOUT!! Uw gebruikersnaam en/of wachtwoord is/zijn verkeerd";
  6. } else {
  7. // alle tekst enzo
  8. ?>
Offline simontjeuh - 04/06/2005 11:21 (laatste wijziging 04/06/2005 11:39)
Avatar van simontjeuh HTML interesse nope, dat lukt nie
mss dat FangorN zelf dit kan oplossen, hij heeft namelijk dit script gemaakt
Offline Steven - 04/06/2005 12:03
Avatar van Steven HTML interesse kijk even in je DB of je geen fouten gemaakt heb in je wachtwoord of gebruikers naam, indien hoofdletters e.d ? misschien is dat de oplossing...:D
Offline simontjeuh - 04/06/2005 13:08
Avatar van simontjeuh HTML interesse volgens mij is er iets mis met die $_SESSION[], misschien wordt dit niet aanvaard door php...
Offline Thomas - 04/06/2005 13:20
Avatar van Thomas Moderator Staat je wachtwoord als MD5-hash in je database opgeslagen ?
Offline simontjeuh - 04/06/2005 13:28 (laatste wijziging 04/06/2005 16:28)
Avatar van simontjeuh HTML interesse ja
echt niemand die raad weet?
plz er moet toch iemand zijn, ik geraak er niet aan uit 
Offline simontjeuh - 04/06/2005 22:33
Avatar van simontjeuh HTML interesse ik heb de code ff veranderd:
  1. <?
  2. require('config.php');
  3. if(!isset($_SESSION['suser']) || empty($_SESSION['suser'])) {
  4. echo "FOUT!! Uw gebruikersnaam en/of wachtwoord is/zijn verkeerd";
  5. ?> <br> <?
  6. echo "hallo";
  7. echo $_SESSION['suser'];
  8. } else {
  9. // tekst
  10. ?>

dit is in index.php
maar blijkbaar heeft $_SESSION['suser'] geen waarde, er staat in mijn browser:
FOUT!! Uw gebruikersnaam en/of wachtwoord is/zijn verkeerd
hallo
hoe komt dit? er wordt geen waarde gegeven aan deze username...
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2026 Sitemasters.be - Regels - Laadtijd: 0.211s