QimenMedlem sedan juni 20015 009 inlägg Jag försöker med en funktion i min klass kolla om en e-post adress är godkänd.
function valid_value_2($string)
{
return (bool)preg_match('/(^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+([a-z]{2,3}$)', $string);
}
Sedan i funktionen där jag vill använda den försöker jag köra med:
if (!$this->valid_value($username) || !$this->valid_value_2($email))
return false;
Jag har en annan funktion som kollar användarnamnet och den funkar redan. Problemmet med den andra är att den inte ger något fel men den avbryter ändå. Någon som ser något fel?
btw, nu när jag ändå frågar. Kan man "bygga ihop" mina två funktioner valid_value och valid_value2 till en men så att de ändå gör rätt?
valid_value ser ut så här:
function valid_value($string)
{
return (bool)preg_match('/(^[a-zåäöA-ZÅÄÖ0-9_-]{4,32}$)/i', $string);
}
PeeerMedlem sedan mars 20025 907 inlägg Re: preg_match problem
function valid_value($string,$value)
{
switch($value){
case 1:
return (bool)preg_match('/(^[a-zåäöA-ZÅÄÖ0-9_-]{4,32}$)/i', $string);
break;
case 2:
return (bool)preg_match('/(^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+([a-z]{2,3}$)', $string);
break;
default:
return false;
}
}
if (!$this->valid_value($username,1) or !$this->valid_value($email,2))
return false;
Kanske?
QimenMedlem sedan juni 20015 009 inlägg Funkar fortfarande inte :(
QimenMedlem sedan juni 20015 009 inlägg Jag fick lösa e-postbiten med eregi istället. Då funkar det.
function valid_value($string,$value)
{
switch($value){
case 1:
return (bool)preg_match('/(^[a-zåäöA-ZÅÄÖ0-9_-]{4,32}$)/i', $string);
break;
case 2:
return (bool)eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+([a-z]{2,3}$)", $string);
break;
default:
return false;
}
}
pongoMedlem sedan aug. 200325 inlägg Detta skall fungera:
return (bool)preg_match('/^([_.0-9a-z-])+@([0-9a-z][0-9a-z-]+.)+([a-z]{2,3}$)/', $string);
Du hade missat: / i slutet av regex, en avslutande parantes samt att Du hade satt ^ innanför första parantesen.
WiZzLeRMedlem sedan juni 2002346 inlägg om
function valid_value($string)
{
return (bool)preg_match('/(^[a-zåäöA-ZÅÄÖ0-9_-]{4,32}$)/i', $string);
}
är ogiltigt. hur gör jag ett error meddelande till det?
MatteMedlem sedan aug. 20002 975 inlägg Är det något sånt här du menar ?
if ( !valid_value("en sträng") ) {
echo "Ett felmeddelande";
}