login  Naam:   Wachtwoord: 
Registreer je!
 Forum

fout bij inloggen

Offline riekele - 13/02/2005 21:18
Avatar van riekelePHP beginner ik heb een fout in een login script hij geeft altijd fout terwijl ik wel goed mijn gegevens invoer. in mijn database heten de velden gebruikersnaam en wachtwoord.
  1. <?
  2. ?>
  3. <form method="post">
  4. <table border="0" width="30%">
  5. <tr>
  6. <td width="50%">Gebruikersnaam</td>
  7. <td width="50%"><input type="text" name="gebruikersnaam" value="Gebruikersnaam" onclick="gebruikersnaam.value=''" size="20"></td>
  8. </tr>
  9. <tr>
  10. <td width="50%">Wachtwoord</td>
  11. <td width="50%"><input type="password" name="wachtwoord" value="Wachtwoord" onclick="wachtwoord.value=''" size="20"></td>
  12. </tr>
  13. <tr>
  14. <td width="50%">Cookie</td>
  15. <td width="50%"><select size="1" name="dagen">
  16. <option selected value="1">1 Dag</option>
  17. <option value="2">2 Dagen</option>
  18. <option value="7">7 Dagen</option>
  19. <option value="14">2 Weken</option>
  20. <option value="28">1 Maand</option>
  21. <option value="178">6 Maand</option>
  22. <option value="356">1 Jaar</option>
  23. </select></td>
  24. </tr>
  25. <tr>
  26. <td width="100%" colspan="2"><input type="submit" name="login" value="Login"></td>
  27. </tr>
  28. </table>
  29. </form>
  30.  
  31. <?
  32. if( isset($_POST["login"]))
  33. {
  34. $query = mysql_query("SELECT * FROM leden WHERE gebruikersnaam='".$_POST["gebruikersnaam"]."'");
  35. $row = mysql_fetch_object($query);
  36. $wachtwoord1 = md5($_POST["wachtwoord"]);
  37. $nick = $_POST["gebruikersnaam"];
  38. if($wachtwoord1 == $row->wachtwoord && $nick == $row->gebruikersnaam)
  39. {
  40. setcookie ("login", $_POST["gebruikersnaam"],time()+3600*$dagen);
  41. echo "U bent ingelogt.";
  42. echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"1; URL=?p=forum\">";
  43. }
  44. else
  45. {
  46. echo "Fout.";
  47. }
  48. }
  49. ?>

9 antwoorden

Gesponsorde links
Offline Thomas - 30/11/1999 00:00 (laatste wijziging 30/11/1999 00:00)
Avatar van Thomas Moderator Wat voor fout krijg je dan rnEen MySQL-error rnEen PHP-error (parse-error, headers already sent, ...) rnrnrnEDIT Heb je al gekeken of je query uberhaupt iets oplevert hoe je query er uit ziet
Offline riekele - 30/11/1999 00:00
Avatar van riekele PHP beginner nee hij returned altijd fout
Offline Thomas - 30/11/1999 00:00
Avatar van Thomas Moderator Echo je query dan eens rnEnof zet achter je query ... or die(mysql_error());rnrnWaarschijnlijk ligt het aan je query.rnrnJe gaat er overigens altijd van uit [i]dat[i] je een resultaat hebt... wat als iemand een niet-bestaande nickname invoert
Offline riekele - 30/11/1999 00:00 (laatste wijziging 30/11/1999 00:00)
Avatar van riekele PHP beginner als ik mijn wachtwoord laat echoën dan geeft hij een heel ander wachtwoord dan in mijn database staats
Offline Thomas - 30/11/1999 00:00 (laatste wijziging 30/11/1999 00:00)
Avatar van Thomas Moderator Staat je wachtwoord wel als md5-hash opgeslagen rnEn is dit de goede hash, en niet de hash van een lege string (d41d8cd98f00b204e9800998ecf8427e) ofzo
Offline riekele - 30/11/1999 00:00 (laatste wijziging 30/11/1999 00:00)
Avatar van riekele PHP beginner ja hij wordt er als md5-hash ingezet en ook opgevraagd er is toch een site waarbij je een wachtwoord kan invoeren en dat hij dan het goeie md5-hash wachtwoord laat zien
Offline Thomas - 30/11/1999 00:00
Avatar van Thomas Moderator Ja, dit kun je ook zelf controleren he rnecho md5(je_wachtwoord);rnrnHet is overigens has[u]h[u], niet has[u]j[u].
Offline riekele - 30/11/1999 00:00 (laatste wijziging 30/11/1999 00:00)
Avatar van riekele PHP beginner hmm dan geeft hij weer een ander wachtwoord aan dan die in de database opslaats het ligt dus aan het aanmelden ik post wel ff me code rnedit hij slaat idd een lege string opsrn[code]rnform method=postrntable border=0 width=50% cellspacing=0 cellpadding=0 style=border-collapse collapse bordercolor=#000000rn trrn td width=50%Naamtdrn td width=50%input type=text name=naamtdrn trrn trrn td width=50%Email adrestdrn td width=50%input type=text name=emailtdrn trrn trrn td width=50%Gebruikersnaamtdrn td width=50%input type=text name=gebruikersnaamtdrn trrn trrn td width=50%Wachtwoordtdrn td width=50%input type=password name=wachtwoord1tdrn trrn trrn td width=50%Wachtwoord bevestigingtdrn td width=50%input type=password name=wachtwoord2tdrn trrn trrn td width=100% colspan=2centerinput type=submit name=aanmelden value=Aanmeldencentertdrn trrntablernformrnrnif( isset($_POST[aanmelden]))rn {rn if($_POST[gebruikersnaam] != && $_POST[email] != && $_POST[naam] != && $_POST[wachtwoord1] != )rn {rn $telgb = mysql_query(SELECT gebruikersnaam FROM leden WHERE gebruikersnaam='.$_POST[gebruikersnaam].') or die(mysql_error());rn $numgb = mysql_num_rows($telgb);rn if($numgb == 1)rn {rn echocenterDeze gebruikersnaam bestaat al, je moet een andere gebruikersnaam nemen!center;rn }rn elsern {rn if(!eregi(^[_a-z0-9-]+(.[_a-z0-9-]+)@[a-z0-9-]+(.[a-z0-9-]+)(.[a-z]{2,4})$, $_POST[email]))rn {rn echocenterJe moet een geldig email adres invullen!center;rn }rn elsern {rn if($_POST[wachtwoord1] != $_POST[wachtwoord2])rn {rn echo centerU heeft niet de zelfde wachtwoorden ingegeven.center;rn }rn elsern {rn echocenterU bent aangemeld.center;rn $wachtwoord = md5($_POST[wachtwoord1]);rn mysql_query(insert into leden (naam,gebruikersnaam,wachtwoord,idatum,mail,ip) values ('.$_POST[naam].','.$_POST[gebruikersnaam].','.$wachtwoord.','.$datum = date(dmY hi).','.$_POST[email].','.$REMOTE_ADDR.')) or die(mysql_error());rn }rn }rn }rn }rn elsern {rn echo centerU heeft iets niet ingevult.center;rn }rn }rnrn[code]
Offline riekele - 30/11/1999 00:00
Avatar van riekele PHP beginner Ik heb het al opgelost had een $ teveel neergezet. Bedankt voor de moeite
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.206s