Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Rejestracja wielkie litery w loginie
Misiuu
post
Post #1





Grupa: Zarejestrowani
Postów: 76
Pomógł: 0
Dołączył: 13.10.2009

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


Witam, posiadam taki skrypt Rejestracji
  1. <div class="tlotextu">
  2. <div class="tavatar">
  3. <div class="avatar">
  4. <img src="http://www.savoir-vivre.pl/customavatars/avatar2_1.gif" class="avatar">
  5. </div></div><div class="tyk"></div>
  6. <div class="text"><div class="naglowek">Rejestracja</div><hr><div class="tresc"><?php
  7.  
  8.  
  9. if (!isset($_SESSION['login'])) { // dostęp dla zalogowanego użytkownika
  10.  
  11. include 'db.php'; // połączenie się z bazą danych
  12. $tabela = 'uzytkownik'; // zdefiniowanie tabeli MySQL
  13.  
  14.  
  15. if ($_POST["wyslane"]) { // jeżeli formularz został wysłany, to wykonuje się poniższy skrypt
  16.  
  17. // filtrowanie treści wprowadzonych przez użytkownika
  18. $login = htmlspecialchars(stripslashes(strip_tags(trim($_POST["login"]))), ENT_QUOTES);
  19. $haslo = $_POST["haslo"];
  20. $haslo2 = $_POST["haslo2"];
  21. $email = htmlspecialchars(stripslashes(strip_tags(trim($_POST["email"]))), ENT_QUOTES);
  22. $email2 = htmlspecialchars(stripslashes(strip_tags(trim($_POST["email2"]))), ENT_QUOTES);
  23. $imie = htmlspecialchars(addslashes(strip_tags(trim($_POST["imie"]))), ENT_QUOTES);
  24. $nazwisko = htmlspecialchars(addslashes(strip_tags(trim($_POST["nazwisko"]))), ENT_QUOTES);
  25.  
  26.  
  27. // system sprawdza czy prawidło zostały wprowadzone dane
  28. if (strlen($login) < 3 or strlen($login) > 30 or !eregi("^[a-zA-Z0-9_.]+$", $login)) {
  29. $blad++;
  30. echo '<p><font color="red">Proszę poprawne wprowadzić login (od 3 do 30 znakó</font></p>';
  31. } else {
  32. $wynik = mysql_query("SELECT * FROM $tabela WHERE login='$login'");
  33. if (mysql_num_rows($wynik) <> 0) {
  34. $blad++;
  35. echo '<p><font color="red">Podana nazwa użytkownika została już zajęta.</font></p>';
  36. }
  37. }
  38. if (strlen($haslo) < 6 or strlen($haslo) > 30 ) {
  39. $blad++;
  40. echo '<p><font color="red">Proszę poprawnie wpisać hasło (od 6 znaków do 30 znaków). </font></p>';
  41. }
  42. if ($haslo !== $haslo2) {
  43. $blad++;
  44. echo '<p> <font color="red">Podane hasła nie są ze sobą zgodne.</font> </p>';
  45. }
  46. if (!eregi("^[0-9a-z_.-]+@([0-9a-z-]+\.)+[a-z]{2,4}$", $email)) {
  47. $blad++;
  48. echo '<p><font color="red"> Proszę wprowadzić poprawnie adres email.</font></p>';
  49. } else {
  50. $wynik = mysql_query("SELECT * FROM $tabela WHERE email='$email'");
  51. if (mysql_num_rows($wynik) <> 0) {
  52. $blad++;
  53. echo '<p> <font color="red">Podany adres e-mail jest już zajęty.</font></p>';
  54. }
  55.  
  56. }
  57. if ($email !== $email2) {
  58. $blad++;
  59. echo '<p> <font color="red">Podane adresy e-mail nie są ze sobą zgodne.</font></p>';
  60. }
  61.  
  62.  
  63. // jeżeli nie ma żadnego błedu, użytkownik zostaje zarejestronwany i wysłany do niego e-mail z linkiem aktywacyjnym
  64. if ($blad == 0) {
  65.  
  66. $haslo = md5($haslo); // zaszyfrowanie hasla
  67. $kod = uniqid(rand()); // tworzenie unikalnego kodu dla użytkownika
  68.  
  69. $wynik = mysql_query("INSERT INTO $tabela VALUES('', '$imie', '$nazwisko', '$login', '$haslo', '$email', '$kod', NOW(), '')");
  70. if ($wynik) {
  71.  
  72. echo '<p>Dziękujemy za rejestrację!</p><div class="clear"></div>';
  73. mysql_close($polaczenie);
  74. }
  75. }
  76. mysql_close($polaczenie);
  77. }
  78.  
  79. // tworzenie formularza HTML
  80. echo <<< KONIEC
  81.  
  82.   <form action="index.php?page=rejestracja" method="post">
  83.   <input type="hidden" name="wyslane" value="TRUE" />
  84.  
  85.   <p>Imię: <input type="text" name="imie" /></p>
  86.   <p>Nazwisko: <input type="text" name="nazwisko" /></p>
  87.   <p>Login*: <input type="text" name="login" /></p>
  88.   <p>Hasło*: <input type="password" name="haslo" /></p>
  89.   <p>Powtórz hasło*: <input type="password" name="haslo2" /></p>
  90.   <p>Adres e-mail*: <input type="text" name="email" /></p>
  91.   <p>Powtórz adres e-mail*: <input type="text" name="email2" /></p>
  92. KONIEC;
  93.  
  94.  
  95. echo <<< KONIEC
  96.  
  97.   <p><input type="submit" value="Rejestruj" /></p></form>
  98. KONIEC;
  99.  
  100. } else {
  101. header('Location: / '); // zalogowany użytkownik zostaje przekierowany na stronę główną
  102. }
  103.  
  104. ?></div>
  105. </div>
  106.  
  107. <div class="clear"></div><div class="odte"></div></div>

Problem polega na tym że mogę zarejestrować użytkownika o loginie "nick" oraz "Nick" jak i "nIck" i to są w tedy 3 inne konta, jak zrobić by nie brało pod uwagę wielkości liter ? oraz przy logowaniu, bym mógł login wpisywać również z małych liter? dziękuję i pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Google: MySQL Collations
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: 29.06.2026 - 08:13