login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Foute login - naar andere pagina

Offline Zitz - 12/10/2004 21:18 (laatste wijziging 12/10/2004 21:19)
Avatar van ZitzNieuw lid hallo, ik heb deze 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['Submit'])) {
  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 naam='".$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. // 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.  
  49. }
  50. }
  51. ?>


maar nu krijg ik het niet voor elkaar om als er niks of een verkeerde naam/wachtwoord wordt ingevoerd dat ie naar de pagina foutpass.php gaat

7 antwoorden

Gesponsorde links
Offline SickBoy - 12/10/2004 21:20
Avatar van SickBoy MySQL beginner session_start(); boven require...
Offline Zitz - 12/10/2004 21:25
Avatar van Zitz Nieuw lid ja, maar ik wil dat als er verkeerde gegevens worden in gevoerd dat de pagina foutpass.phph wordt geopent, ik hab al verschillende dingen geprobeert, maar het werkte niet, maar ik kan wel gewoon inloggen, het script werkt!, maar als je iets verkeerds invoert dan reload hij gewoon de login pagina!
Offline jarro - 12/10/2004 21:26
Avatar van jarro HTML interesse
  1. if(mysql_num_rows($res) > 0) {
  2. //blablabla
  3. }
  4. else{
  5. (location:foutpass.php)
  6. }

ergens in die zin moet het zijn
Offline b4nkr0bz0r - 12/10/2004 21:27
Avatar van b4nkr0bz0r PHP gevorderde niet gekeken naar het script maar dit is logisch als ik je probleem hoor
  1. if (empty($_post['submit']))
  2. }
  3. echo "je moet wat invullen!";



voor de foute pagina:
  1. } else {
  2. header ("location:fout.php");
Offline SickBoy - 12/10/2004 21:30
Avatar van SickBoy MySQL beginner ik zie daar nergens location staan :x
Offline jarro - 12/10/2004 21:35
Avatar van jarro HTML interesse ik had et bijna goed:D:D:D
Offline Thomas - 12/10/2004 21:35
Avatar van Thomas Moderator Zitz: Ik had je al antwoord gegeven op deze vraag via het pm-systeem. Waarom reageer je niet als het (blijkbaar) niet duidelijk is ?
Je kan dit soort problemen beter met de auteur van het script (ik) afhandelen dan hier een topic van maken, niet ?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.2s