Autor | Zpráva | ||
---|---|---|---|
Ricky4852 Profil * |
#1 · Zasláno: 26. 2. 2010, 21:16:11
Dobrý deň, mám menší problem s mojou vlastnou PHP diskusiou.
Pridávam novú funkciu - smajle, ale potrebujem to ošetriť tým, aby ma s nimi niekto nezasipal. Takže nejak limitovať počet smajlov, napadlo ma už riešenie, že napr. podmienka: ak v texte je znakov "[/1]" viac ako 5, tak spravu neodošle, bohužiaľ neviem ako sformulovať túto podmienku do skriptu. Ďakujem za všetky odpovede :) |
||
WanTo Profil |
#2 · Zasláno: 26. 2. 2010, 21:45:29
Asi nejjednodušší bude použít regulární výrazy. Tady máš ukázku, smajlíky to bere jako [/číslo] (může mít i víc cifer):
$text = "[/445] ahoj svete [/1] [/222] aaa <br> \n [/1][/1]."; $reg = "/^(\s|\S)*(\[\/[0-9]+\](\s|\S)*){5,}$/"; if (preg_match($reg, $text)) echo "jo"; else echo "ne"; |
||
Ricky4852 Profil * |
#3 · Zasláno: 26. 2. 2010, 22:07:29
Funguje to, veľmi pekne ďakujem :)
|
||
Ricky4852 Profil * |
#4 · Zasláno: 26. 2. 2010, 22:12:46
No má to malú chybičku, skript som zmenil na:
$reg = "/^(\s|\S)*(\[\/[0-15]+\](\s|\S)*){5,}$/"; a skúšam: [/1] [/2] [/3] [/4] [/5] [/6] [/7] [/8] [/9] [/10] [/11] [/12] [/13] [/14] - ide - nejde [/1] [/2] [/3] [/4] [/5] [/6] [/7] [/8] [/9] [/10] [/11] [/12] [/13] [/14] [/15] Už pri piatich smajloch mi malo zahlasiť že to nema isť :S |
||
mattyZEM Profil |
#5 · Zasláno: 26. 2. 2010, 22:32:13 · Upravil/a: mattyZEM
Nemůžeš dát 0-15, jde jen 0-9 a tomu musíš určit ještě "+" nebo {1,2}
$reg = "/^(\s|\S)*(\[\/[0-90-5]+\](\s|\S)*){5,}$/" |
||
Ricky4852 Profil * |
#6 · Zasláno: 26. 2. 2010, 22:53:02
Už to ide, vďaka ešte raz :)
|
||
Časová prodleva: 13 let
|
0