Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Pola tekstu
Forum PHP.pl > Forum > Przedszkole
Dizzy
No więc chciałbym do mojego skrypty dodac skryp który będzie sprawdzał ilosc oraz typ znaków w formularzu rejestracji
Czy mógłby ktos to zrobić ?
  1. <img src="Grafika/podstrony/rejestracja.gif"><br><br>
  2. <?
  3. include 'Konfiguracja/Konfiguracja.php';
  4. if ($register == "on")
  5. {
  6. if (!isset($_POST['send'])) { // Sprawdzanie czy formularz zostal wyslany
  7. echo "<form action='index.php?show=Rejestruj' method=post>
  8.    <table>
  9.    <tr><td>Login:</td> <td><input type=\"text\" name=\"login\"> <font color=\"#FF0000\">*</font> ( 3 - 12 znaków )</td></tr>
  10.    <tr><td>Hasło:</td> <td><input type=\"password\" name=\"haslo1\"> <font color=\"#FF0000\">*</font> ( 6 - 32 znaków )</td></tr>
  11.    <tr><td>Powtórz Hasło:</td> <td><input type=\"password\" name=\"haslo2\"> <font color=\"#FF0000\">*</font> ( 6 - 32 znaków )</td></tr>
  12.    <tr><td>E-mail: <td><input type=\"text\" name=\"mail\"> <font color=\"#FF0000\">*</font> ( 8 - 32 znaków )</td></tr>
  13.    <tr><td>GG: <td><input type=\"text\" name=\"gg\"></td></tr>
  14.    <tr><td>Token:<td><img src='obrazek.php' width=\"120\" height=\"15\" alt=''></td></tr>
  15.    <tr><td><td><input type=\"text\" name=\"token\"> <font color=\"#FF0000\">*</font></td></tr>
  16.    </table><br><font color=\"#FF0000\">*</font> - Pola wymagane<br><br>
  17.    <input type=submit name=\"send\" value=\"Zarejestruj mnie\">
  18.    </form><br>";
  19.  
  20. } else {
  21. $user_login = $_POST['login'];
  22. $user_pass1 = $_POST['haslo1'];
  23. $user_pass2 = $_POST['haslo2'];
  24. $user_mail = $_POST['mail'];
  25. $user_gg = $_POST['gg'];
  26. if($_POST['token'] == $_SESSION['token'])
  27. { echo "Token przepisany poprawnie<br>";
  28.  if(!empty($user_login) && !empty($user_pass1) && !empty($user_pass2) && !empty($user_mail)){    //oraz czy uzupełniono wszystkie dane
  29.      if ($user_pass1 == $user_pass2) {
  30.       $check_query = mysql_query("SELECT * FROM users WHERE user_login='$user_login'");
  31.      if(mysql_num_rows($check_query)==1) { echo 'Uzytkownik juz istnieje.'; }
  32.      else{
  33.          $password = md5(md5($user_pass1));
  34.          $q = "INSERT INTO users (user_id, user_login, user_haslo, user_mail, user_gg, user_type) VALUES (0 , '$user_login' , '$password' , '$user_mail' , '$user_gg', '0')"; // zapisywanie rekordu do bazy
  35.          if (@mysql_query ($q)) {
  36.          echo "Konto załozono poprawnie.";
  37.          } else {
  38.          echo "Konto niemoze byc utworzone " . mysql_error() . ""; }
  39.          }
  40.      } else { echo 'Podane hasla nie zgadzaja sie'; }
  41.  }
  42.  else { echo "Nie uzupełniono wszystkich pól!!!"; }
  43. }
  44. else
  45. {
  46. echo"Błędnie przepisany token!<br>";
  47. }
  48. }
  49. mysql_close(); //zamykanie połączenia z bazą
  50. }
  51. else if ($register == "off")
  52. {
  53. echo "Rejestracja wyłączona!";
  54. }
  55. else
  56. {
  57. print 'Błąd konfiguracji!';
  58. }
  59.  
  60.  
  61. ?>
piotrooo89
nie wiem czy chcesz to zrobić dynamicznie (javascript) czy statycznie(php)

jeśli statycznie to strlen() powinien Ci pomóc. niestety w js nie jestem biegły wiec nie pomogę. ale pewnie nie ma żadnych mecyji.
Lejto
użyj if'a i funkcji strlen();
np.:
  1. <?php
  2. if(strlen($user)>16)
  3.            {
  4.              
  5.                echo ('Nazwa użytkownika nie może mieć więcej niż 16 znaków');
  6.             }
  7. ?>
Dizzy
Mógłbys zamiescic to w moim skrypcie?
Lejto
podałem ci już cały przykład ty musisz tylko pozmieniac zmienne i liczbę znaków w if'ach
takie to trudne?
Dizzy
Owszem ;-) Wkoncu jestesmy w przedszkolu tongue.gif
piotrooo89
ale nie w gotowych rozwiązaniach... daliśmy Ci wskazówkę powinieneś wiedzieć jak to robić.

nauka na błędach jest najlepsza....

btw. tu nie można mówić o błędach bo wszystko masz podane a to co chcesz zrobić zawiera się w kilku linijkach i przebiegłości programisty. ale z Ciebie leń.
Lion_87
Cytat(piotrooo89 @ 26.10.2008, 19:42:54 ) *
ale z Ciebie leń.

ZGADZAM SIE z Tobą. biggrin.gif

Mozesz to dodac do ifa gdzie sprawdzasz czy token jest ok
  1. <?php
  2. if( ... && strlen($mail)  < '32' && strlen($password)  < '32' ) ( ... )
  3. ?>



nauka na błędach jest najlepsza....
tongue.gif



P.S. Mam nadzieje że ktoś nie zamknie tego tematu
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.