Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] walidacja danych max i min dlugość danych w formularzu
Forum PHP.pl > Forum > Przedszkole
powertee
przewertowałem wszystkie książki i strony ale nie mogę znaleźć wyrażeń regularnych którymi można by określić maksymalną i minimalna długość textarea w formularzu, (PHP)
  1. <?php
  2. if ($_POST["email"] &&
  3. !ereg("^[^@]+@([a-z-]+.)+[a-z]{2,4}$", $_POST[ "email"]))
  4. $error .= "ADRES EMAIL JEST NIEPRAWIDLOWY.";
  5. ?>

tak określam jak ma wyglądać adres e mail
a co muszę zrobić żeby określić min i max długość??

chcę żeby wyświetlał się komunikat więc maxlenght html nie wchodzi w grę
John
a może poprostu strlen" title="Zobacz w manualu PHP" target="_manual, i sprawdzenie czy mieści się w przedziałach min,max podanych przez Ciebie. To rozwiązanie wydaje mi się tu oczywiste, ale może źle zrozumiałem Twój problem. Jeśli tak to pisz, poszukamy czegoś innego.

-edit.
Z tym, że nie jest to wyrażenie reguralne oczywiscie
powertee
chodzi mi o to ze jeśli wpisze mniej niż trzy znaki i więcej niż 60 to zwraca ze podana nazw jest nie prawidłowa,
a jak używać tego "strlen"
scanner
RTFM: strlen" title="Zobacz w manualu PHP" target="_manual
  1. <?php
  2. $sString = 'Lorem ipsum sit dolor amet';
  3. switch( true ){
  4. case strlen( $sString ) > 60:
  5. echo 'Za długi';
  6. break;
  7. case strlen( $sString ) < 3:
  8. echo 'Za krótki';
  9. break;
  10. default:
  11. echo 'OK';
  12. break;
  13. }
  14. ?>
Danone
Robisz sobie warunek:

  1. <?php
  2. $string = 'abcd';
  3. $dlugosc = strlen($string);
  4.  
  5. if($dlugosc < 3 ){
  6. echo "Za mało znaków";
  7. }else if ($dlugosc > 60){
  8. echo "Za dużo znaków"
  9. }else{
  10. //dodajesz do bazy czy co tam chciałes robić
  11. }
  12. ?>


manual:

http://pl2.php.net/manual/pl/function.strlen.php


@scanner był szybszy smile.gif
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-2024 Invision Power Services, Inc.