[php] eregi probleem

Pagina: 1
Acties:
  • 38 views sinds 30-01-2008

  • EL_Loco
  • Registratie: Oktober 2001
  • Laatst online: 08-11-2023

EL_Loco

alias Haco

Topicstarter
ik heb een form waar mensen iets invullen, nu wil ik dat het alleen maar cijfers zijn, die dan m'n db ingaan. Daarvoor heb ik dit gemaakt:
PHP:
1
2
3
4
5
if ( eregi ("^[a-z]", $artikel_nummer))
{
  echo "Je moet wel een echt artikel nummer invoeren. <BR>(dus alleen nummers)";
                        include ("invoerform.php");
}

als ik dan in m'n form 123ab invul dan laat hij hem door :( , maar met ab123 niet(dat is wat ik wil)
wat kan ik hier aandoen :? ik heb al gekeken op php.net, maar daar kwam ik alleen eregi tegen voor email (die zien er trouwens ook best 8)7 uit :) )

rumores non hiatus dremelunt
malleo omnia consentiunt
Lid van het Anti-Jamba front!


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 19-08 22:14

Bosmonster

*zucht*

Van onze grote kindervriend:

http://gerard.yoursite.nl/got/regex-tut/

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Deze regex betekent:

^ --> begin van string
[a-z] 1 character wat tussen de a en de z ligt

Het enige wat je met deze regex dus test is of het eerste character in de string een character is wat aan de voorwaarde [a-z] voldoet. Verder niets.

Ik denk dat je [^a-z] bedoelt, maar ook dat is niet volledig. niet [a-z] betekent namelijk niet alleen nummers, maar ook leestekens, en alles wat dus niet a,b,c...z is.

Daarbij komt dat een string "abcdef1ghijkl" ook aan een regex [^a-z] voldoet, omdat er namelijk een gedeelte van de string matcht op [^a-z], namelijk '1'.

Werk de bovengenoemde tut even door, en kom tot 't inzicht dat je dus een beetje beter je best moet doen.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Dit topic is gesloten.