- Edited
//expressió regular de dni, passem $_POST[dni] i el comparem amb una expressió regular i assignem el resultat a la variable $dni_matches
preg_match('/[0-9]{8}-[A-Z]{1}/',$_POST['dni'],$dni_matches, PREG_OFFSET_CAPTURE);
//expressió regular de nom, passem $_POST[nom] i el comparem amb una expressió regular i assignem el resultat a la variable $nom_matches
preg_match('/[a-zïüéíóúàèòñç\s]{1,35}/',$_POST['nom'],$nom_matches, PREG_OFFSET_CAPTURE);
var_dump($dni_matches);
var_dump($nom_matches);
if($dni_matches && $nom_matches){
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect("localhost", "root", "P-11fl32fg14", "registrarse");
$query = "INSERT INTO registrarse (dni,nom) VALUES ('$_POST[dni]','$_POST[nom]')";
echo $query;
mysqli_query($link, $query);
mysqli_close($link);
}
elseif ($_POST['dni'] != preg_match('/[0-9]{8}-[A-Z]{1}/',$_POST['dni'],$dni_matches, PREG_OFFSET_CAPTURE)) {
echo "Els dni ha de tenir 8 numeros de llarg un guió alt i una lletra exemple 43564748-B.";
}
elseif ($_POST['nom'] != preg_match('/[a-zïüéíóúàèòñç\s]{1,35}/',$_POST['nom'],$nom_matches, PREG_OFFSET_CAPTURE)){
echo "Els noms ha d'estar en minúscules exemple albert.";
}
I can enter name with character especial @
the regular expression is not working properly I want just this a-zïüéíóúàèòñç\s
if ($_POST['dni'] != preg_match('/[0-9]{8}-[A-Z]{1}/',$_POST['dni'],$dni_matches, PREG_OFFSET_CAPTURE)) {
echo "Els dni ha de tenir 8 numeros de llarg un guió alt i una lletra exemple 43564748-B.";
}
elseif ($_POST['nom'] != preg_match('/[a-zïüçéíóúàèòñá\s]{1,35}/',$_POST['nom'],$nom_matches, PREG_OFFSET_CAPTURE)){
echo "Els nom ha d'estar en minúscules exemple albert.";
}
else {
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect("localhost", "root", "P-11fl32fg14", "registrarse");
$query = "INSERT INTO registrarse (dni,nom) VALUES ('$_POST[dni]','$_POST[nom]')";
echo $query;
mysqli_query($link, $query);
mysqli_close($link);
}