login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[How To] Sessie naar cookie?

Offline Toppe - 18/10/2004 08:09
Avatar van ToppePHP interesse Hoi,
Ik ben druk bezig aan me nieuwe website. Alles werkt lekker zoals het hoort te werken alleen zit ik met 1 probleem. Het inloggen werkt op sessies en ik wil graag dat mensen dat kunnen kiezen!
Is dit aan te raden?, Dat je kan kiezen of je een sessie wilt gebruiken of een cookie?

En zou iemand dat voor mij willen maken (Ik ben niet goed in cookies en sessies!)

Ik denk dat je alleen login.php en loguit.php nodig hebt!

login.php
  1. <table class="content_blok" cellSpacing="0" cellPadding="0" id="table24" style="width: 100%">
  2. <tr>
  3. <td height="18" background="balk6.gif"><!-- titel -->
  4. <table cellSpacing="0" cellPadding="0" width="100%" border="0" id="table25">
  5. <tr>
  6. <td style="FONT-WEIGHT: bold; COLOR: #808080" width="100%">
  7. <font color="#ff9900">»</font>
  8. Inloggen</td>
  9. </tr>
  10. </table>
  11. <!-- /titel --></td>
  12. </tr>
  13. <tbody id="menu_8">
  14. <tr>
  15. <td vAlign="top" bgColor="#f1f5f6"><?PHP
  16.  
  17. # Als er gepost is ga dan verder met de gegevens te bewerken
  18. if (isset($login))
  19. { echo'<img src="images/fout.gif" border="0">&nbsp;<b>Je bent al ingelogt. Je kan je natuurlijk niet nog een 2de keer inloggen!</b>';
  20. } else {
  21. if ($_SERVER['REQUEST_METHOD'] == 'POST')
  22. {
  23. $naam=$_REQUEST['gebruikersnaam'];
  24. $naam=strtolower($naam);
  25. $naam=trim($naam);
  26. $wacht=$_REQUEST['wachtwoord'];
  27. $wacht=strtolower($wacht);
  28. $wacht=trim($wacht);
  29. $wacht=md5($wacht);
  30.  
  31. if ($naam=="") # als er geen naam is ingevuld
  32. {
  33. echo "<img src=\"images/fout.gif\" border=\"0\">&nbsp;U heeft geen gebruikersnaam ingevuld</font>";
  34. include ("form.php");
  35. }
  36. elseif ($_REQUEST['wachtwoord']=="") # als er geen wachtwoord is ingevuld
  37. {
  38. echo "<img src=\"images/fout.gif\" border=\"0\">&nbsp;U heeft geen wachtwoord ingevuld</font>";
  39. include ("form.php");
  40. }
  41.  
  42.  
  43. else
  44. {
  45.  
  46. $select = mysql_query("SELECT id,level,ban, emailadres, gebruikersnaam FROM members WHERE gebruikersnaam='$naam' && wachtwoord='$wacht'") or die(mysql_error());
  47. if (mysql_num_rows($select)==1) # als de gegevens kloppen en er is maar één rij gevonden maak dan de sessies
  48. {
  49.  
  50.  
  51. if (mysql_result($select, 0, "ban")==1)
  52. {
  53. echo "<img src=\"images/fout.gif\" border=\"0\">&nbsp;Je bent gebanned, neem contact op met de admin die je eventueel un-banned (als hij dat nodig vindt).</font>";
  54. }
  55.  
  56. $_SESSION['login'] = true;
  57. $_SESSION['level'] = mysql_result($select, 0, "level");
  58. $_SESSION['gebruikersid'] = mysql_result($select, 0, "id");
  59. header("Location: index.php");
  60. }
  61. else # als de gegevens niet kloppen en er dus geen resultaten zijn gevonden
  62. {
  63. include ("form.php");
  64. echo "<img src=\"images/fout.gif\" border=\"0\">&nbsp;De gegevens kloppen niet helemaal";
  65. }
  66. }
  67. }
  68.  
  69.  
  70. # Als er niet gepost is laat dan het formulier zien
  71. elseif ($_SERVER['REQUEST_METHOD'] != 'POST')
  72. {
  73. include ("form.php");
  74. }
  75. }
  76. ?>
  77. </td>
  78. </tr>
  79. </table>


form.php Let op! Dit is het login form! Hier moet je dus de gegevens invullen. Ook moet hier komen of je mag kiezen!
  1. <table>
  2. <tr>
  3. <td>Hier onder kan je inloggen zodat je toegang krijgt tot de extra opties!<br>Heb je nog geen account? Klik dan op de button 'Aanmelden'</td>
  4. </tr></table><form method="post" action="?pagina=leden/login">
  5. <table>
  6. <tr>
  7. <td class=mediumtext width=140>
  8. <B>Gebruikersnaam:</B>
  9. </td><td> <INPUT type=text class=normalfield size=25 name=gebruikersnaam maxlength="18"> (Gebruikersnaam kwijt)
  10. </td> </tr><tr>
  11. <td class=mediumtext width=140>
  12. <B>Wachtwoord:</B>
  13. </td>
  14. <td>
  15. <INPUT class=normalfield type=password size=25 name=wachtwoord maxlength="18"> (Wachtwoord verloren)
  16. </td>
  17. </tr>
  18. <tr>
  19. <td class=medio,text width=140>&nbsp;</td>
  20. <td colspan=2>
  21. <INPUT type=submit name=submit value=Login>&nbsp;<input type=button name=aanmelden Value='Aanmelden' onclick="window.location='index.php?pagina=leden/aanmelden'">
  22. </td>
  23. </tr>
  24. </table>
  25. </form>


logout.php
  1. <table class="content_blok" cellSpacing="0" cellPadding="0" id="table24" style="width: 100%">
  2. <tr>
  3. <td height="18" background="balk6.gif"><!-- titel -->
  4. <table cellSpacing="0" cellPadding="0" width="100%" border="0" id="table25">
  5. <tr>
  6. <td style="FONT-WEIGHT: bold; COLOR: #808080" width="100%">
  7. <font color="#ff9900">»</font>
  8. Uitloggen</td>
  9. </tr>
  10. </table>
  11. <!-- /titel --></td>
  12. </tr>
  13. <tbody id="menu_8">
  14. <tr>
  15. <td vAlign="top" bgColor="#f1f5f6">
  16. <?PHP
  17. if (!isset($login))
  18. { echo'<img src="images/fout.gif" border="0">&nbsp;<b>Je bent niet ingelogt dus kan je je zelf niet uitloggen!, Klik <a href="?pagina=leden/login">hier</a> om in te loggen!</b>';
  19. } else {
  20. echo'Je bent uitgelogt. Klik <a href="index.php">hier</a> om terug te gaan naar de beginpagina!';
  21. }
  22. ?>
  23. </td>
  24. </tr>
  25. </table>


Ik hoop dat iemand mij kan helpen! En hij/zij het voor mij wilt doen!

12 antwoorden

Gesponsorde links
Offline Bertjuh - 18/10/2004 08:18 (laatste wijziging 18/10/2004 08:25)
Avatar van Bertjuh HTML interesse Een loginscript werkt met cookies óf sessies.

Net als hier kun je het beste je login bijhouden dmv een sessie, en je kunt je bezoekers laten kiezen om permanent ingelogd te blijven d.m.v. een cookie.

Alleen een sessie is server-sided, en een cookie staat op je computer (client sided) dus qua beveiliging ligt het eraan welke invuling jij je cookie gaat geven. (plain-text wachtwoord bijv?)

edit: er zijn zooooveel goede tut's (ook hier waarmee je zelf aan de slag kan met S&C... probeer het uit, anders ga je de volgende keer dat je een dergelijk probleem tegenkomt weer anderen je script laten maken.
Offline Thomas - 18/10/2004 13:50
Avatar van Thomas Moderator En standaard maken sessies al gebruik van cookies .

Kijk maar in de sessie-tutorial.
Offline Toppe - 18/10/2004 16:07
Avatar van Toppe PHP interesse Zou iemand dit dan om willen zetten voor mij naar 'Echte' cookies? Zodat je ook kan kiezen?
Offline Maarten - 18/10/2004 16:58
Avatar van Maarten Erelid Waarom zou je moeten kiezen tussen sessies ja of nee? Als je server ze ondersteunt, waarom zou je ze dan niet gebruiken? Ze vervuilen je pc niet en zijn redelijk eenvoudig... meer mogelijkheden dan alleen maar cookies gebruiken...

Dat is net kiezen tussen een bak friet of spruiten...
Offline Toppe - 19/10/2004 17:31
Avatar van Toppe PHP interesse Dan is die sessie vast spruiten en die cookies vast de friet:D!
Offline Maarten - 19/10/2004 17:35
Avatar van Maarten Erelid Nee, omgekeerd! Cookies worden niet altijd ondersteunt, frieten wel!
Offline Gerard - 19/10/2004 17:39
Avatar van Gerard Ouwe rakker om eerlijk te zijn ben ik ook al even op zoek naar een fatsoenlijke tutorial over hoe een login te maken álá sitemasters waarbij je kan kiezen of je ingelogd wil blijven of niet.

kan het gewoon niet zo 1..2..3.. uit de scripts halen hoe het nu precies werkt. en ja ik weet dat het best simpel is maar ik moet het gewoon ff doorhebben 
Offline Maarten - 19/10/2004 17:40 (laatste wijziging 19/10/2004 17:41)
Avatar van Maarten Erelid Ik heb het geleerd via het script van FangorN: heb het gebruikt, functies bijgevoegd en zo, en na een eindje begin je heel die zooi wel te snappen! Ik raad je hetzelfde aan.
Bedankt trouwens aan FangorN 

Login àlà Sitemasters: ben er 99% zeker van dat dit hetzelfde script is omdat de cookie ook zo heet zoals in het script, en FangorN is Admin, zodus...
Offline Toppe - 19/10/2004 17:57
Avatar van Toppe PHP interesse Hoezo frienten zijn beter? Niet iedereen heeft steeds weer zin om zich zelf steeds in te loggen!
Offline Maarten - 19/10/2004 19:20
Avatar van Maarten Erelid Jah combineer dan die frieten met die spruiten, als je browser cookies ondersteunt, wel handig, dan hoef je niet constant opnieuw in te loggen, als je browser het niet ondersteunt: pech, enable het dan of log opnieuw in.

In feite moet je niet kiezen, gewoon combineren...
Offline Toppe - 20/10/2004 07:55
Avatar van Toppe PHP interesse Wie zou frieten en spruiten dan voor mij willen combineren? Ik ben zelf super slecht met spruiten en laatstaan met frieten er bij....
Offline Maarten - 20/10/2004 10:38
Avatar van Maarten Erelid Neem login.php van FangorN, zorg gewoon dat de db velden wat kloppen; daar wordt gebruikt gemaakt van cookies en sessies. (ook session.php gebruiken dan)

http://sitemast...&id=85
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.218s