助けていただけないでしょうか。PHP を使用して、html フォームから MySQL DB にデータを渡しています。すべてのフィールドが検証されましたが、DB に入る前にすべてのデータを検証したいと考えています。
たとえば、「名前」フィールドに十分な文字が入力されていない場合はユーザーに通知されますが、電子メール アドレスが正しく検証された場合は、データが DB に挿入されます。どうすればそれを行うことができますか?
// check the length of 'name' field if between 2 and 50 characters
if ((strlen($name) < 2 || strlen($name) > 50)) {
echo "The name is invalid, must be between 2 and 50 chearacters.";
exit;
}
echo "</br>";
// check field name contains numbers
if (preg_match('#[0-9]#',$name)){
echo 'The name is invalid, its contains numbers. Please go back and try again.';
}
echo "</br>";
// Check if email is valid. If not tell the user it is invalid
$regex = '/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/';
if (!preg_match($regex, $emailaddress)) {
echo "Invalid email address. Please go back and try again.";
}
// insert the data from the registration form into the DB
mysql_query("INSERT into customers
(cs_name, cs_emailaddress)
VALUES
(
'".$name."', '".$emailaddress."',
)
")
or die(mysql_error());