Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Logowanie
Forum PHP.pl > Forum > Przedszkole
arafat
Witam. Znalazłem prosty skrypt rejestracji który przerobiłem według własnych potrzeb. Teraz kombinuję, ale za chiny wykombinować nie umiem jak podpiąć pod mój skrypt logowanie z kont utworzonych z tej rejestracji.

Oto kod pod który chcę podpiąć logowanie:
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml"><head>
  3.  
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5. <title>logowanie</title>
  6. <link rel="stylesheet" href="css/structure.css">
  7. <link rel="shortcut icon"
  8. <script language="javascript" type="text/javascript" src="js/jquery-1.js"></script>
  9. <script type="text/javascript" src="js/TyntLite.js"></script></head><body id="welcomePage">
  10. <div class="container">
  11. <link rel="stylesheet" href="css/login.css">
  12. <div class="loginFields">
  13. <form name="loginForm" id="loginForm" method="post"
  14. action="rainier.php">
  15.  
  16. <div id="errBox"></div>
  17. <div class="fieldImages">
  18. <input class="loginBox" id="e_11121"
  19. onfocus="activateField(this);" name="e_11121" value="EMAIL"
  20. autocomplete="off" type="text">
  21. <input value="hasło" class="loginBox"
  22. id="p_11121" name="p_11121" onfocus="activateField(this);"
  23. onkeydown="checkForEnterKey(event);" autocomplete="off" type="text">
  24. </div>
  25. <a class="signIn"
  26. href="#" onclick="doLogin(); return
  27. false;"></a>
  28. </form>
  29. </div>
  30.  
  31. <script language="javascript" type="text/javascript" src="js/login.js"></script>
  32.  
  33. </div>

A oto skrypt rejestracji:

  1. <html>
  2. <head>
  3. <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" />
  4. <title> Rejestracja </title>
  5. </head>
  6. <body>
  7. <?php
  8. include ('includes/config_includes.php');
  9.  
  10.  
  11. if(isset($_POST['wyslij']))
  12. {
  13.  
  14.  
  15. foreach ($_POST AS $klucz => $wartosc)
  16. {
  17. $wartosc= trim($wartosc);
  18. $wartosc= stripslashes($wartosc);
  19. $wartosc=htmlspecialchars($wartosc, ENT_QUOTES);
  20. $_POST[$klucz]=$wartosc;
  21. }
  22.  
  23. $login=$_POST['login'];
  24. $haslo=$_POST['haslo'];
  25. $re_haslo=$_POST['re_haslo'];
  26. $email=$_POST['email'];
  27.  
  28. $blad_txt='';
  29. $blad=false;
  30.  
  31.  
  32.  
  33.  
  34.  
  35. $zapytanie_sprawdz_usera= "select * from users where user_name='$login' ";
  36. $wynik = mysql_query($zapytanie_sprawdz_usera);
  37. if(!$wynik)
  38. {
  39. echo 'Przepraszamy rejestracja w tej chwili jest nie mozliwa. Prosze spróbowac pozniej
  40. .';
  41. }
  42. if(mysql_num_rows($wynik)>0)
  43. {
  44. $sprawdz_login=1;
  45. }
  46.  
  47.  
  48. $zapytanie_sprawdz_email= "select * from users where user_email ='$email' ";
  49. $wynik_email = mysql_query($zapytanie_sprawdz_email);
  50. if(!$wynik_email)
  51. {
  52. echo 'Przepraszamy rejestracja w tej chwili jest nie mozliwa. Prosze spróbowac pozniej
  53. .';
  54. }
  55. if(mysql_num_rows($wynik_email)>0)
  56. {
  57. $sprawdz_email=1;
  58. }
  59.  
  60.  
  61.  
  62.  
  63. if(empty($login)){
  64. $info_txt_nick.=' <font color="#B20000"> Pole nie zostało wypełnione.</font>';
  65. $blad=true;
  66. }
  67. else if($sprawdz_login==1){
  68. $info_txt_nick.=' <font color="#B20000"> Login o takiej nazwie już istnieje.</font>';
  69. $blad=true;
  70. }
  71. else if(strlen($login)<5){
  72. $info_txt_nick.='<font color="#B20000">Login jest za krótki.</font>';
  73. $blad=true;
  74. }
  75. else if(strlen($login)>12){
  76. $info_txt_nick.=' <font color="#B20000"> Nie poprawna nazwa loginu, max 12 znaków.</font>';
  77. $blad=true;
  78. }
  79. else{
  80. $info_txt_nick.=' <font color="#207C07"> OK.</font>';
  81. }
  82.  
  83.  
  84. if(empty($haslo)){
  85. $info_txt_haslo.='<font color="#B20000"> Pole nie zostało wypełnione.</font>';
  86. $blad=true;
  87. }
  88. else if(strlen($haslo)<=6) {
  89. $info_txt_haslo.=' <font color="#B20000"> Hało jest za krótkie.</font>';
  90. $blad=true;
  91. }
  92. else if(strlen($haslo)>16){
  93. $info_txt_haslo.=' <font color="#B20000"> Hasło może składać sie z Max 16 znaków.</font>';
  94. $blad=true;
  95. }
  96. else{
  97. $info_txt_haslo.=' <font color="#207C07"><b> OK.</b></font>';
  98. }
  99.  
  100.  
  101. if(empty($re_haslo)){
  102. $info_txt_re_harlo.=' <font color="#B20000"> Pole nie zostało wypełnione.</font>';
  103. $blad=true;
  104. }
  105. else if($haslo != $re_haslo){
  106. $info_txt_re_harlo.='<font color="#B20000"> Hała muszą być takie same.</font>';
  107. $blad=true;
  108. }
  109. else{
  110. $info_txt_re_harlo.='<font color="#B20000"><font color="#207C07"> OK.</font>';
  111. }
  112.  
  113.  
  114.  
  115. if(empty($email)){
  116. $info_txt_email.=' <font color="#B20000"> Pole nie zostało wypełnione.</font>';
  117. $blad=true;
  118. }
  119. else if($sprawdz_email==1){
  120. $info_txt_email.=' <font color="#B20000"> Adres email o takiej nazwie już istnieje.</font>';
  121. $blad=true;
  122. }
  123. else if(!preg_match('|^[_a-z0-9.-]*[a-z0-9]@[_a-z0-9.-]*[a-z0-9].[a-z]{2,3}$|e', $email)){
  124. $info_txt_email.=' <font color="#B20000"> Adres email jest nie prawidłowy.</font>';
  125. $blad=true;
  126. }
  127. else{
  128. $info_txt_email.=' <font color="#207C07"> OK.</font>';
  129. }
  130.  
  131.  
  132. if(!$blad)
  133. {
  134. $pokaz_form=true;
  135.  
  136. $zapytanie_add_user = "INSERT INTO `users` values(NULL, '".$login."', '".sha1($haslo)."', '".$haslo."', '".$email."')";
  137.  
  138.  
  139. $odpowiedz = mysql_query($zapytanie_add_user);
  140. if($odpowiedz > 0){
  141. echo 'Rejestracja przebiegła pomyślnie do konca.<br /><ul>Twój nick to: '.$login.'<br>Hasło: '.$haslo.'<br>E-Mail: '.$email.'</ul>';
  142. }
  143. else{
  144. $pokaz_form=false;
  145. echo 'Problem z MySQL.';
  146. }
  147.  
  148.  
  149. }
  150. else
  151. {
  152.  
  153. // echo $blad_txt;
  154. $pokaz_form=false;
  155. }
  156. }
  157. else
  158. {
  159.  
  160. $login='';
  161. $haslo='';
  162. $re_haslo='';
  163. $email='';
  164. }
  165.  
  166. if($pokaz_form!=true){
  167. ?>
  168. </body>
  169. <style>
  170. table.form{
  171. margin-left: 120px;
  172. font-size: 12px;
  173. }
  174. td.title{
  175. vertical-align: bottom;
  176. text-align: right;
  177. }
  178. td.info{
  179. vertical-align: bottom;
  180. text-align: left;
  181. }
  182. </style>
  183. <form action="<? $_SERVER['PHP_SELF']; ?>" method="POST">
  184. <table class="form" name="form" border="0px" cellpadding="3px" cellspacing="0px">
  185. <tbody>
  186. <tr>
  187. <td style="width:80px;"></td>
  188. </tr>
  189.  
  190. <tr>
  191. <td class="title">Login:</td>
  192. <td class="info">
  193. <input type="text" name="login" value="<? echo $login; ?>"> <? echo $info_txt_nick; ?>
  194. </td>
  195. </tr>
  196.  
  197. <tr>
  198. <td class="title">Hasło:</td>
  199. <td class="info">
  200. <input type="password" name="haslo" value="<? echo $haslo; ?>"> <? echo $info_txt_haslo; ?>
  201. </td>
  202. </tr>
  203.  
  204. <tr>
  205. <td class="title">Powtórz Hasło:</td>
  206. <td class="info">
  207. <input type="password" name="re_haslo" value="<? echo $re_haslo; ?>"> <? echo $info_txt_re_harlo; ?>
  208. </td>
  209. </tr>
  210.  
  211. <tr>
  212. <td class="title">E-Mail:</td>
  213. <td class="info">
  214. <input type="text" name="email" value="<? echo $email; ?>"> <? echo $info_txt_email; ?>
  215. </td>
  216. </tr>
  217.  
  218. <tr>
  219. <td>
  220. </td>
  221. <td>
  222. <input type="submit" name="wyslij" value="Register" />
  223. <input type="button" value="Clean" class="clean" onclick="window.location='<? $_SERVER['PHP_SELF']; ?>' "/>
  224. </td>
  225. </tr>
  226. </tbody>
  227. </table>
  228. </form>
  229. <?
  230. }
  231. else{
  232. return false;
  233. }
  234. ?>
  235. </html>


Czy mógł by mi ktoś z tym pomóc? Z góry dziękuję, pozdrawiam smile.gif
Ulysess
przy logowaniu dajesz 2 pola . login , haslo następnie wysyłasz formularzem dane do podstrony np x.php . tam są odbierane dane następnie jest zapytanie SELECT login = $login_z_formularza and haslo = $haslo_z_formularza. jeżeli funkcja mysql_num_rows zwróci wartośc 1 oznacza że dane są prawidłowe i wywołuje się kod odpowiedzialny za zalogowanie czyli np $_SESSION['log'] = 1
jeśli funkcja zwróci nam wartość 0 tzn że login/hasło jest złe
arafat
Zrobiłem coś takiego, ale za nic nie mogę tego rozgryźć dlaczego nie działa. Ciągle mi wywala


  1. Parse error: syntax error, unexpected T_IF in /srv/home/j72780jh/public_html/ptzplace/register/login.php on line 3


Oto kod tego co zrobiłem.


  1. <?
  2. include register/includes/cfg.php
  3. if(empty($_POST['sprawdz'])){
  4. echo '<form method="POST" action="login.php">E-Mail: <input type="text" name="email"><form type="hidden" name="sprawdz" value="tak"><br>Password: <input type="text" name="password"><br><input type="submit" value="Login"></form>';
  5. }
  6. else
  7. {
  8. if(empty($_POST['email']))
  9. echo 'Nie podałeś Email';
  10. }
  11. else
  12. {
  13. if(empty($_POST['password'])){
  14. echo 'Nie podałeś hasla'
  15. $email1=$_POST['email'];
  16. $password1=$_POST['password'];
  17. $zapytanie="SELECT user_password_short FROM users WHERE user_email IS '$email1';";
  18. $libanczyk=mysql_query($zapytanie);
  19. if($libanczyk==$password1)
  20. {
  21. echo '<head><meta http-equiv="refresh" content="1; url=categories.php"></head>';
  22. }
  23. else
  24. {
  25. echo '<head><meta http-equiv="refresh" content="1; url=login.php"></head>';
  26. }
  27. }
  28. }
  29. }
  30. ?>
H4eX
  1. include register/includes/cfg.php
ixpack
Poszukaj w cfg.php, a później sprawdź czy nie masz za dużo else...
H4eX
Cytat(ixpack @ 9.07.2010, 18:52:38 ) *
Poszukaj w cfg.php, a później sprawdź czy nie masz za dużo else...


eee? Napisałem wyżej z czym jest problem. Funkcja wygląda include() a nie include.

Zauważyłem jeszcze:
  1. echo 'Nie podałeś hasla'
ixpack
@H4eX - ogólnie w kodzie ma dużo "literówek"... Ale to forum to chyba nie parser, każdy musi przez to przejść, pomęczyć się, poszukać ; ' " { } ( ) ... itd.
muk4
Oj, oj do okulisty marsz!
  1. include register/includes/cfg.php

Nie ma średnika na końcu

@EDIT
Widzę, że ktoś mnie uprzedził smile.gif
arafat
Dziękuję Wam bardzo smile.gif Niby takie małe błędy, a takich problemów mogą przysporzyć tongue.gif
Jak to mówią, człowiek uczy się na błędach winksmiley.jpg

Jeszcze raz dziękuję za pomoc, Pozdrawiam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.