login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Loginsysteem werkt niet met doorstuurservice (Opgelost)

Offline Roow - 08/01/2009 19:49
Avatar van RoowLid Beste mensen,

ik had een vraag, want ik heb een loginsysteem en als ik dus dat loginsysteem gebruik, of een gedownloadde andere inlogscript, en ik maak heel de site dan doetie het, maar als ik dan via doorstuur domein doe, bijvoorbeeld .6x.to maar ook .nl domein, dan kan je afentoe niet inloggen.
Als je dan inlogt zie je heel even (fractie van een seconde) dat je ben ingelogd en dan gaatie meteen weer weg. Weet iemand waaraan dit ligt ? Want bij de directe link werkt het wel altijd

11 antwoorden

Gesponsorde links
Offline henver - 08/01/2009 19:50
Avatar van henver HTML gevorderde Voorbeeld en code?
Offline Roow - 08/01/2009 20:06 (laatste wijziging 08/01/2009 21:28)
Avatar van Roow Lid www.chaotic-viruses.6x.to
  1. <? echo "<form action='index.php?act=login' method='post'>"; ?><div class="login2"><?php
  2.  
  3. //Is gebruiker al ingelogd?
  4. if ($_SESSION['ingelogd'] == 1){
  5.  
  6. //Al ingelogd, gegevens weergeven.
  7. echo "&nbsp;&nbsp;&nbsp;&nbsp;Welcome: ".$_SESSION['gebruikersnaam'];
  8. echo "&nbsp;&nbsp;";
  9. echo "<a href='index.php?p=loguit' class='loginlink'>Log out</a>&nbsp;&nbsp;";
  10. echo "<a href='index.php?p=memberpage' class='loginlink'>Member Page</a>&nbsp;&nbsp;";
  11.  
  12. }
  13.  
  14. //Nog niet ingelogd! Login Forum ge-submit?
  15. elseif (isset($_POST['loginsubmit'])) {
  16.  
  17. //Sql Query om user in database te checken
  18. $sql = "
  19. SELECT * FROM users WHERE
  20. gebruikersnaam = '".$_POST['gebruikersnaam']."'
  21. AND wachtwoord = '".md5($_POST['wachtwoord'])."'
  22. ";
  23.  
  24. //LoginQuery uitvoeren
  25. $res = mysql_query($sql) or die(mysql_error());
  26.  
  27. //Resultaat controleren
  28. if(mysql_num_rows($res) >= 1) {
  29.  
  30. //Account bestaat en wachtwoord ook!
  31. while ($login = mysql_fetch_array($res)){
  32.  
  33. //Account status checken (ban, niet geactiveerd etc.)
  34. if ($login['status'] == "ban") {
  35.  
  36. //Ban-bericht weergeven
  37. echo "You are banned, and not welcome anymore!";
  38. }
  39.  
  40. //Niet gebanned...
  41. else {
  42.  
  43. //Status van de account checken, actief?
  44. if ($login['status'] == "ongeactiveerd") {
  45.  
  46. //Niet geactiveerd, bericht weergeven!
  47. echo "You have not activated your
  48. account yet, please click on the
  49. link in the e-mail!";
  50. }
  51.  
  52. //Wel geactiveerd. Session gegevens instellen!!!
  53. else {
  54.  
  55. $ipcheck = "
  56. SELECT * FROM ip WHERE
  57. gebruikersnaam = '".$_POST['gebruikersnaam']."'
  58. AND ip = '".addslashes($_SERVER['REMOTE_ADDR'])."'
  59. ";
  60.  
  61. //LoginQuery uitvoeren
  62. $ipcheckres = mysql_query($ipcheck);
  63.  
  64.  
  65. switch (mysql_num_rows($ipcheckres)) {
  66.  
  67. //UserIP wel in database: update datum+tijd
  68. case 1:
  69.  
  70. $ipquery = "UPDATE ip SET laatstingelogd= NOW() WHERE gebruikersnaam = '".$_POST['gebruikersnaam']."'";
  71.  
  72. break;
  73.  
  74. //UserIP nog niet in de database
  75. default:
  76.  
  77. $ipquery = "INSERT INTO ip (
  78. laatstingelogd,
  79. gebruikersnaam,
  80. gebruikersid,
  81. ip
  82. )
  83.  
  84. VALUES(
  85. NOW() ,
  86. '".addslashes($_POST['gebruikersnaam'])."',
  87. '".addslashes($login['id'])."',
  88. '".addslashes($_SERVER['REMOTE_ADDR'])."'
  89. )";
  90.  
  91. break;
  92. }
  93.  
  94. $ipqueryres = mysql_query($ipquery);
  95.  
  96. $_SESSION['ingelogd'] = 1;
  97. $_SESSION['gebruikersnaam'] = $_POST['gebruikersnaam'];
  98. $_SESSION['status'] = $login['status'];
  99. $_SESSION['gebruikers_id'] = $login['id'];
  100. echo "&nbsp;&nbsp;&nbsp;&nbsp;Welcome:".$_SESSION['gebruikersnaam'];
  101. echo "<meta http-equiv=\"refresh\" content='0;URL=http://www.your-sign.nl/sites/cv/index.php?p=memberpage'>";
  102. if ($_SESSION['gebruikers_id'] < 718) {
  103. /*
  104. ?>
  105. <!
  106. <script language="Javascript">
  107. <!--
  108. alert ("loremipsum.")
  109. //-->
  110. </script>
  111. <?php
  112. */
  113. }
  114. }
  115. }
  116. }
  117.  
  118. }
  119.  
  120. //Gebruikersnaam en/of wachtwoord incorrect.
  121. else {
  122.  
  123. echo "&nbsp;&nbsp;&nbsp;&nbsp;<b>Error!</b>&nbsp;";
  124. echo "Username: ";
  125. echo "<input name='gebruikersnaam' type='text' size='20'class='loginvak' />&nbsp;";
  126. echo "Password: ";
  127. echo "<input name='wachtwoord' type='password' size='20' class='loginvak' />&nbsp;";
  128. echo "<input name='loginsubmit' type='submit' value='Log-in' class='loginvak' />&nbsp;&nbsp;&nbsp;&nbsp;</form>"; if($_SESSION['ingelogd'] != 1)echo "";
  129.  
  130.  
  131.  
  132. }
  133. echo "<br />";
  134.  
  135.  
  136. }
  137.  
  138. //Login forum nog niet ge-submit...
  139. else{
  140.  
  141. echo "&nbsp;&nbsp;&nbsp;&nbsp;Username: ";
  142. echo "<input name='gebruikersnaam' type='text' size='20'class='loginvak' />&nbsp;";
  143. echo "Password: ";
  144. echo "<input name='wachtwoord' type='password' size='20' class='loginvak' />&nbsp;";
  145. echo "<input name='loginsubmit' type='submit' value='Log-in' class='loginvak' />&nbsp;&nbsp;&nbsp;&nbsp;</form>"; if($_SESSION['ingelogd'] != 1)echo "";
  146.  
  147. }
  148.  
  149.  
  150.  
  151.  
  152.  
  153. ?>
  154. <?php echo "</form>"; ?>
Offline BigBug - 08/01/2009 21:15
Avatar van BigBug PHP expert Het kan zijn dat ik het over het hoofd zie maar ik mis de <form> tag?

Staat daar niet toevallig een action in die naar een bepaald vast adres gaat?
Offline Roow - 08/01/2009 21:18
Avatar van Roow Lid die stond wel in de code, maar was vergeten te kopireen:P
Offline Evertje - 08/01/2009 23:35
Avatar van Evertje Lid Roow,

ik begrijp je probleem niet echt, dus ik ken d'r helemaal naast zitten.. Maar als je de extensie van de domein aanpast, pas je de extensie in de meta/refresh aan?!

Dus: http://www.your-sign.nl/sites/cv/index.php?p=memberpage

Wijzig je in: http://www.your-sign.6x.to/sites/cv/index.php?p=memberpage

 
Offline Roow - 09/01/2009 17:04
Avatar van Roow Lid nee, het is een doorstuurdomein, dus daarkan je nooit www.your-sign.nl.6x.to/blablabla . want het verwijst alleen daarnaar
Offline Koen - 09/01/2009 17:16
Avatar van Koen PHP expert
Evertje schreef:
Roow,

ik begrijp je probleem niet echt, dus ik ken d'r helemaal naast zitten.. Maar als je de extensie van de domein aanpast, pas je de extensie in de meta/refresh aan?!

Dus: http://www.your-sign.nl/sites/cv/index.php?p=memberpage

Wijzig je in: http://www.your-sign.6x.to/sites/cv/index.php?p=memberpage

 


Je zit er inderdaad hélemaal naast.
http://www.6x.to is een gratis service waar je subdomeinen kan aanmaken (www.chaotic-viruses.6x.to), dat subdomain bevat een frame waarin de eigenlijke pagina wordt weergeven.
Het probleem zit 'm niet in de .6x.to, maar in de frames.

Je kan het ook oplossen door de pagina "uit de frame te laten breken":
  1. if (top.location != self.location) {
  2. top.location = self.location.href
  3. }


(Tussen script tags in je head.)
Offline Threetimes - 09/01/2009 17:20
Avatar van Threetimes PHP beginner even los hiervan, je script is niet veilig...
ik zie dit staan:
  1. $sql = "SELECT * FROM users WHERE gebruikersnaam = '".$_POST['gebruikersnaam']."' AND wachtwoord = '".md5($_POST['wachtwoord'])."'";

Als ik als gebruikersnaam '; DROP TABLE 'users'; SELECT * FROM users WHERE gebruikersnaam = ' invul word je tabel gewist...
ik heb net ingelogd met '; ALTER TABLE 'users' ADD 'niet-veilig' VARCHAR( 666 ) NOT NULL ; SELECT * FROM users WHERE gebruikersnaam = ' dus als het goed is heeft je tabel nu een extra kolom "niet-veilig". Als dat zo is zie je hoe gevaarlijk gebruikersinput kan zijn...
Gebruik liever iets als dit:
  1. $sql = "SELECT * FROM users WHERE gebruikersnaam = '".addslashes($_POST['gebruikersnaam'])."' AND wachtwoord = '".md5($_POST['wachtwoord'])."'";
Door addslashes worden aanhalingstekens onschadelijk gemaakt, en zal alles dat ingevuld word onderdeel worden van de tekst. het woachtwoordveld is wel veilig omdat de inhoud daarvan gehashed word, en ook daardoor worden aanhalingstekens onschadelijk gemaakt.
Offline Roow - 09/01/2009 17:30
Avatar van Roow Lid ik heb geen extra kolom nu hoor? waar moetie staan dan. iig bedankt maar ikz ie het echt niet
Offline Threetimes - 09/01/2009 17:41
Avatar van Threetimes PHP beginner Het zou de laatste kolom van de tabel users moeten zijn, maar als het niet is gelukt, dan niet 
Ik zou toch addslashes eromheenzeten, het kan iig geen kwaad.
Offline Roow - 10/01/2009 13:25 (laatste wijziging 10/01/2009 13:32)
Avatar van Roow Lid k thnx iig:) En ohjah sliphead jij ook bedankt, want dat werkt idd:)
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2026 Sitemasters.be - Regels - Laadtijd: 0.21s