De momento he puesto esto:
Código PHP:
$username = trim($_POST["username"]);
//The app does not seen the display name, so use the Username for it //trim($_POST["displayname"]);
$usernames = clean_chars($username); // remove special characters and signs
$condicion= '/^[a-z0-9d_\.|-]{4,28}$/i';//[a-zA-Z]((\.|_|-)?[a-zA-Z0-9]+){5,12}
if (preg_match($condicion, $username)) {
echo "example successful.";
die();
}
else{
echo "example failed";
die();
}
Y parece que lo he solucionado, por el momento al menos.
Ha de validar un usuario con caracteres alfanuméricos, con guion bajo, guion y puntos. independientemente del orden, como lo veis?