Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> eregi + białe znaki
Ulysess
post
Post #1





Grupa: Zarejestrowani
Postów: 695
Pomógł: 65
Dołączył: 27.07.2009
Skąd: Y

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


witam mam dość prosty problem lecz nie mogę znaleźć nigdzie odpowiedzi.. a mianowicie potrzebuje zrobić walidacje formularz który przepuści zmienną jeżeli posiada tylko i wyłącznie a-z A-z 0-9 _ oraz spacje ale tylko w środku zmiennej czyli nie może spacją być 1 oraz ost znak . 1

  1. $zmienna = 'tekst1981_';
  2.  
  3. if(eregi('^[a-zA-Z0-9_]+$', $zmienna))
  4. {
  5. echo 'poprawne';
  6. }


nie wiem jak zrobić aby też spacje akceptował bo na tą chwile tego nie robi..

z góry dziękuje (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Ulysess
post
Post #2





Grupa: Zarejestrowani
Postów: 695
Pomógł: 65
Dołączył: 27.07.2009
Skąd: Y

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


wiem że tak...

jaka jest różnica pomiędzy
  1. if(preg_match('/^([a-z0-9_ ]+)$/', $zmienna))


a

  1. if(preg_match('/^([a-z0-9_ ]+)$/i', $zmienna))


skoro nawet jeśli w zmiennej mam spacje to i tak przepsuzcza (IMG:style_emoticons/default/questionmark.gif) ...

w sumie jednak zmieniłem zdanie i wole żeby user miał w nazwie tylko a-z , 0-9 A-Z oraz _

  1. $zmienna = 'a1_aZ_913Z';
  2.  
  3. if(preg_match('/^[a-zA-Z0-9_]+$/', $zmienna))
  4. {
  5. echo 'poprawne';
  6. }


czy coś takiego wystarczy ?
Go to the top of the page
+Quote Post
Fifi209
post
Post #3





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Cytat(Ulysess @ 15.08.2009, 13:20:26 ) *
wiem że tak...

jaka jest różnica pomiędzy
  1. if(preg_match('/^([a-z0-9_ ]+)$/', $zmienna))


a

  1. if(preg_match('/^([a-z0-9_ ]+)$/i', $zmienna))

Taka, że to drugie przepuści też duże litery a to pierwsze nie.
Cytat(Ulysess @ 15.08.2009, 13:20:26 ) *
skoro nawet jeśli w zmiennej mam spacje to i tak przepsuzcza (IMG:style_emoticons/default/questionmark.gif) ...

Bo chciałeś mieć możliwość wpisania spacji, a te z przodu i tyłu ucinasz najpierw trim

Cytat(Ulysess @ 15.08.2009, 13:20:26 ) *
w sumie jednak zmieniłem zdanie i wole żeby user miał w nazwie tylko a-z , 0-9 A-Z oraz _

To zdecyduj się co chcesz.

Cytat(Ulysess @ 15.08.2009, 13:20:26 ) *
  1. $zmienna = 'a1_aZ_913Z';
  2.  
  3. if(preg_match('/^[a-zA-Z0-9_]+$/', $zmienna))
  4. {
  5. echo 'poprawne';
  6. }


czy coś takiego wystarczy ?

A nie prościej:
  1. if(preg_match('/^([a-z0-9_]+)$/i', $zmienna))


W ogóle zamiast głupio pytać to poczytaj np. :
http://uk3.php.net/manual/pl/reference.pcr...n.modifiers.php

Ten post edytował fifi209 15.08.2009, 13:55:07
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: 5.10.2025 - 10:53