Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ PHP _ [PHP]Jak sprawdzić czy pole zawiera 3 lub więcej znaków alfanumerycznych?

Napisany przez: akurczyk 7.08.2008, 11:19:39

Jak w temacie jak sprawdzić czy pole zawiera 3 lub więcej znaków alfanumerycznych?
Proszę o pomoc!!!

Napisany przez: GrayHat 7.08.2008, 11:23:45

int http://pl2.php.net/strlen(string $string)

Napisany przez: akurczyk 7.08.2008, 11:25:27

ale jak podaj kod

Napisany przez: GrayHat 7.08.2008, 11:27:52

  1. <?php
  2. $str = "slowka";
  3.  
  4. if (http://www.php.net/strlen($str) > 3) {
  5. http://www.php.net/echo "Wieksze";
  6. } else {
  7. http://www.php.net/echo "Mniejsze";
  8. }
  9. ?>

Napisany przez: akurczyk 7.08.2008, 11:30:16

dzięki a jak sprawdzić czy są to znaki alfanumeryczne a-z,1-9

Napisany przez: Shili 7.08.2008, 11:35:37

Chyba raczej nie strlen. Znak . czy ~ to nie są znaki alfanumeryczne przecież!

Kod
([a-zA-Z0-9](.*)){3}
- coś w stylu takiego wyrażenia regularnego. Nie wiem czy działa, w razie czego trzeba będzie poprawić ^^ No i oczywiście nie uwzględnia znaków narodowych winksmiley.jpg

Napisany przez: GrayHat 7.08.2008, 11:36:04

  1. <?php
  2. $str = 'sadjodiasofj234423jsdfiof';
  3.  
  4. if( http://www.php.net/preg_match( '![^a-zA-Z0-9]+!i', $str) ) { 
  5. http://www.php.net/echo "niedozwolone";
  6. } else {
  7. http://www.php.net/echo "tylko alfanumeryczne";
  8. }
  9. ?>

Napisany przez: akurczyk 7.08.2008, 11:53:24

co to jest $match


coś tutaj nie dział:

  1. <?php
  2. if(http://www.php.net/isset($_POST['login']) && http://www.php.net/strlen($_POST['login']) > 3 && !http://www.php.net/preg_match("![^a-zA-Z0-9]+!i", $wynik['login']) && http://www.php.net/isset($_POST['haslo']) && http://www.php.net/strlen($_POST['haslo']) > 3 && !http://www.php.net/preg_match("![^a-zA-Z0-9]+!i", $wynik['haslo']) && http://www.php.net/isset($_POST['powtorz_haslo']) && $_POST['powtorz_haslo'] == $_POST['haslo'] && http://www.php.net/isset($_POST['e-mail']) && http://www.php.net/strlen($_POST['e-mail']) > 6 && http://www.php.net/isset($_POST['imie_i_nazwisko']) && http://www.php.net/strlen($_POST['login']) > 6 ) {}
  3. ?>

Pomocy!!!
PS: Dodam jeszcze że chciałbym żeby w loginie, mogły występować same cyfry lub same litery.


To nie działa:
  1. <?php
  2. $str = "aaazzz11119999";
  3. if(!http://www.php.net/preg_match("![^a-zA-Z0-9]+!i", $str) { http://www.php.net/echo "ok"; } else { http://www.php.net/echo "no"; }
  4. ?>

Napisany przez: f1xer 7.08.2008, 12:31:39

  1. <?php
  2. $str="jakisdasdasd";
  3. if(!http://www.php.net/preg_match("![^a-zA-Z0-9]+!i", $str)) { http://www.php.net/echo "ok"; } else { http://www.php.net/echo "no"; }
  4. ?>


brakowało nawiasu do if'a

Napisany przez: akurczyk 7.08.2008, 12:50:52

Dzięki i jeszcze jedno jak zrobić żeby w hasło mogły występować wszystkie znaki ale musi znajdować się tam a-z i 1-9?

i jeszcze jedno jak zrobić żeby w loginie (poprzednim wyrażeniu) nie można było używać dużych znaków wywaliłem A-Z ale to nic nie dało

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)