PHP programozás során, hogy lehet elérni egy űrlapnál, hogy az egyik beviteli mezőben (név) csak szöveget fogadjon el, számot ne?
Írtam PHP-ban egy weblapot, ami adatbázissal van kapcsolatban, új adat sort(tanuló adatait) kell bevinnem, de a név mezőben nem szeretném, ha elfogadna szám karaktert. A kódrészlet a következő:
Név: <input type="text" name="nev" /><br />
type-nak text-et adok meg, az meg bármilyen sztringet elfogad. Az attribútumokkal lehet ezt esetleg szabályozni?
A PHP-nak nincs sok köze az input mező attribútumaihoz.
HTML5-ben type-nak meg lehet adni "number"-t is.
Itt egy példa:
Igen de én azt akarom, hogy ne lehessen számot beírni csak szöveget. Inkább reguláris kifejezéssel szeretném, mint ahogyan az első hozzászóló ajánlotta.
Ebben mi a hiba:
if(preg_match("/[A-Z][a-z]*/ [A-Z][a-z]*/",$nev)==0)
{echo 'Érvénytelen név';}
Bocsánat, elnéztem, természetesen a HTML5 inputja támogatja a rexep mintákat is.
Amit írtál, abban a hiba a 3 / jel, a * 0 karakternél is működik, neked + kell, és nem támogatja az ékezetes betűket tartalmazó neveket.
PHP-nál én valami ilyesmit írnék mintának:
\p{Lu} - az összes nagybetű
\p{Ll} - az összes kisbetű
\s - az összes szóköz
"/minta/u" - unicode támogatás
Ebből már össze lehet rakni:
"/^[\p{Lu}][\p{Ll}]+\s[\p{Lu}][\p{Ll}]+$/u"
Persze ennél vannak sokkal jobb megoldások is:
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!