Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php/sql]problem ze skryptem
ronia65
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 25.09.2006

Ostrzeżenie: (0%)
-----


Mam coś takiego

  1. <?php
  2. CREATE TABLE logowanie (
  3. login VARCHAR(50) NOT NULL PRIMARY KEY,
  4. haslo VARCHAR(32) NOT NULL,
  5. kod VARCHAR(32) NOT NULL,
  6. status TINYINT UNSIGNED NOT NULL,
  7. data DATETIME NOT NULL,
  8. email VARCHAR(120) NOT NULL,
  9.  
  10. imie VARCHAR(200),
  11. miejsce VARCHAR(120) NOT NULL
  12. )
  13. ?>



  1. <?
  2. $mysql_host = "localhost";
  3. $mysql_login = "log";
  4. $mysql_haslo = "qwe";
  5. $mysql_baza = "log";
  6. $mysql_tabela = "logowanie";
  7. $twoj_adres = "ronia65@o2.pl";
  8.  
  9. $opcja = trim($_REQUEST["opcja"]);
  10.  
  11. if ($opcja=="test") {
  12.  
  13. // **************************************************
  14. // ********** 1. sprawdzenie danych i dodanie uzytkownika
  15. // **************************************************
  16.  
  17. $login = htmlspecialchars(stripslashes(trim($_POST["login"])), ENT_QUOTES);
  18. $haslo = htmlspecialchars(stripslashes(trim($_POST["haslo"])), ENT_QUOTES);
  19. $email = htmlspecialchars(stripslashes(trim($_POST["email"])), ENT_QUOTES);
  20. $imie = htmlspecialchars(stripslashes(trim($_POST["imie"])), ENT_QUOTES);
  21. $miejsce = htmlspecialchars(stripslashes(trim($_POST["imie"])), ENT_QUOTES);
  22.  
  23. if (strlen($login)<3 or strlen($login)>50
  24. or !eregi("^[a-zA-Z0-9_.]+$",$login)) { $blad++;
  25. echo "<span style=\"color:red;\">Login musi mieć od 3 do 50 znaków
  26. bez polskich liter i spacji!</span><br />";
  27. } else {
  28. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  29. if (mysql_select_db($mysql_baza)) {
  30.  $wynik=mysql_query("SELECT * FROM $mysql_tabela WHERE login='$login'");
  31. } else echo "Nie można połączyć się z bazą";
  32. mysql_close($baza);
  33. } else echo "Nie można połączyć się z serwerem MySQL";
  34. if (mysql_num_rows($wynik)<>0) { $blad++;
  35. echo "<span style=\"color:red;\">Login już został przez kogoś użyty!.
  36. Zaproponuj inny!</span><br />";
  37. }
  38. }
  39.  
  40. if (strlen($haslo)<6 or strlen($haslo)>50
  41.  or !eregi("^[a-zA-Z0-9]+$",$haslo)) { $blad++;
  42. echo "<span style=\"color:red;\">Hasło musi mieć od 6 do 50 znaków
  43. bez polskich liter i spacji!</span><br />";
  44. }
  45.  
  46. if (!eregi("^[0-9a-z_.-]+@([0-9a-z-]+.)+[a-z]{2,4}$",$email)) { $blad++;
  47. echo "<span style=\"color:red;\">E-mail nie został
  48. podany prawidłowo!</span><br />";
  49. }
  50.  
  51. if ($blad==0) {
  52. $kod = uniqid(rand());
  53. $haslo = md5($haslo); // zaszyfrowanie hasla
  54. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  55. if (mysql_select_db($mysql_baza)) {
  56. $wynik = mysql_query("INSERT INTO $mysql_tabela
  57. VALUES('$login', '$haslo', '$kod', 1, NOW(), '$email', '$imie', '$miejsce')");
  58. } else echo "Nie można połączyć się z bazą";
  59. mysql_close($baza);
  60. } else echo "Nie można połączyć się z serwerem MySQL";
  61.  
  62. if ($wynik) {
  63. $list="
  64. Aby potwierdzic rejestracje kliknij w ciagu 48 godzin na adres:
  65. <a href=\"http://adres.pl/rejestracja.php?opcja=potwierdz&kod=$kod\" target=\"_blank\">http://adres.pl/rejestracja.php?opcja=potw...p;kod=$kod</a>
  66. Jezeli nie chcesz sie rejestrowac, zignoruj ten list.
  67. ";
  68. mail($email, "Rejestracja", $list, "From: <$twoj_adres>");
  69. echo "<p>Aby dokończyć proces rejestracji odbierz e-mail</p>";
  70. }
  71. } else $opcja="";
  72. }
  73.  
  74. if ($opcja=="") {
  75.  
  76. // **************************************************
  77. // ********** 2. formularz zakładania konta
  78. // **************************************************
  79.  
  80. echo <<<KONIEC
  81. <form action="rejestracja.php" method="post">
  82. <input type="hidden" name="opcja" value="test" />
  83. <table>
  84. <tr>
  85.   <td>login:*</td>
  86.   <td><input type="text" name="login" value="$login" /></td>
  87. </tr>
  88. <tr>
  89.   <td>hasło:*</td>
  90.   <td><input type="password" name="haslo" value="$haslo" /></td>
  91. </tr>
  92. <tr>
  93.   <td>e-mail:*</td>
  94.   <td><input type="text" name="email" value="$email" /></td>
  95. </tr>
  96. <tr>
  97.   <td>imie i nazwisko:</td>
  98.   <td><input type="text" name="imie" value="$imie" /></td>
  99. </tr>
  100. <tr>
  101.   <td>miejsce</td>
  102.   <td><input type="text" name="miejsce" value="$miejsce" /></td>
  103. </tr>
  104. <tr>
  105.   <td> </td>
  106.   <td><input type="submit" value=" OK, rejestruję się!" /></td>
  107. </tr>
  108. </table>
  109. </form>
  110. KONIEC;
  111. }
  112.  
  113.  
  114. if ($opcja=="potwierdz") {
  115. // **************************************************
  116. // ********** 3. potwierdzenie rejestracji, uaktywnienie uzytkownika
  117. // **************************************************
  118.  
  119. $kod = htmlspecialchars(stripslashes(trim($_GET["kod"])), ENT_QUOTES);
  120. if ($kod<>"") {
  121. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  122. if (mysql_select_db($mysql_baza)) {
  123. $wynik = mysql_query("DELETE FROM $mysql_tabela
  124. WHERE data<=DATE_SUB(NOW(),INTERVAL 2 DAY) and status=1");
  125. $wynik = mysql_query("UPDATE $mysql_tabela
  126. SET status='5', data=NOW() WHERE kod='$kod' and status=1");
  127. $wynik = mysql_query("SELECT * FROM $mysql_tabela
  128. WHERE kod='$kod' and status=5");
  129. } else echo "Nie można połączyć się z bazą";
  130. mysql_close($baza);
  131. } else echo "Nie można połączyć się z serwerem MySQL";
  132. if (mysql_num_rows($wynik)==1) {
  133. $dane = mysql_fetch_array($wynik);
  134. echo "<p>Dziękujemy. Rejestracja została zakończona poprawnie.</p>";
  135. }
  136. }
  137. if ($kod=="" or mysql_num_rows($wynik)<>1) {
  138. echo "<p>Rejestracja nie może zostać dokończona -
  139. sprawdź czy link jest poprawny!</p>";
  140. }
  141. }
  142.  
  143.  
  144.  
  145. if ($opcja=="przypomnij") {
  146.  
  147. // **************************************************
  148. // ********** 4. formularz przypominania danych
  149. // **************************************************
  150.  
  151. echo <<<KONIEC
  152. <p>Wpisz login użyty podczas rejestracji.
  153. Po chwili otrzymasz mailem nowe hasło.</p>
  154. <form action="rejestracja.php" method="post">
  155. <input type="hidden" name="opcja" value="wyslijhaslo" />
  156. <table>
  157. <tr>
  158.   <td>login:</td>
  159.   <td><input type="text" name="login" value="$login" /></td>
  160. </tr>
  161. <tr>
  162.   <td> </td>
  163.   <td><input type="submit" value=" przypomnij " /></td>
  164. </tr>
  165. </table>
  166. </form>
  167. KONIEC;
  168. }
  169.  
  170.  
  171. function haslo() {
  172. $min = 6; $max = 12;
  173. for($i=0;$i<rand($min,$max);$i++) {
  174. $znak=chr(rand(48,122));
  175. if (eregi("[0-9a-zA-Z]",$znak)) $haslo .= $znak;
  176. else $i--;
  177. }
  178. return $haslo;
  179. }
  180.  
  181.  
  182. if ($opcja=="wyslijhaslo") {
  183.  
  184. // **************************************************
  185. // ********** 5. zmiana hasla i wyslanie go do uzytkownika
  186. // **************************************************
  187.  
  188. $login = htmlspecialchars(stripslashes(trim($_POST["login"])), ENT_QUOTES);
  189. $hasloczytelne = haslo();
  190. $haslo = md5($hasloczytelne);
  191. if ($login<>"") {
  192. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  193. if (mysql_select_db($mysql_baza)) {
  194. $wynik = mysql_query("UPDATE $mysql_tabela
  195. SET haslo='$haslo' WHERE login='$login' and status=5");
  196. $wynik = mysql_query("SELECT * FROM $mysql_tabela
  197.  WHERE login='$login' and status=5");
  198. } else echo "Nie można połączyć się z bazą";
  199. mysql_close($baza);
  200. }
  201. if (mysql_num_rows($wynik)==1) {
  202. $dane = mysql_fetch_array($wynik);
  203. $email = $dane["email"];
  204. $list="Oto przypominane haslo: $hasloczytelne";
  205. mail($email, "Przypomnienie hasla", $list,"From: <$twoj_adres>");
  206. echo "<p>Hasło zostało wysłane mailem...</p>";
  207. } else {
  208. echo "<p>Użytkownik o podanym loginie nie istnieje!</p>";
  209. }
  210. }
  211. }
  212. ?>


Problem jest taki że po wpisaniu danych imię zapisuje mi sie w polu miejsce co z tym zrobić??


-------------------------
dodałem [tag] do tematu ponieważ
padły już odpowiedzi
na przyszłość pamiętaj, że dodawanie
[tag]u należy do Ciebie
~Cienki1980
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 19:23