FC2ブログ

メールアドレスの形式および存在チェック

#09 エラーチェックを行おう (2)
http://dotinstall.com/lessons/sns_php_v2/9609
を参考に
メールアドレスの形式及び存在のチェック

変更するソースファイルは
signup.php のみ

メールアドレスが正しいかどうかは
filter_var()
を使う

filter_var($email,FILTER_VALIDATE_EMAIL)
で正しいか判定

正しくないか判定するには
if(!filter_var($email,FILTER_VALIDATE_EMAIL)){
}
となる

そして、もし正しくないならエラーを出す為
$err['email']='メールアドレスの形式が正しくないです';
とする

また、すでにメールアドレスが登録済みなら
ユーザ関数 emailExists() を使って
if(emailExists($email , $dbh)){
$err['email']='このメールアドレスはすでに登録ずみです';
}
というようにする

ユーザ関数
emailExists() は

function emailExists($email,$dbh){
}
としてDB接続して行う関数になる

この関数の中身は
$sql ="select * from users where email = :email limit 1";
として
$sql にSQLで検索した内容を格納

$stmt =$dbh->prepare($sql);
というように
prepare() へ $sql を指定する
prepare() はデータの挿入とか削除などにつかう

次に、プレースホルダーを使うので
$stmt->execute(array(":email"=>$email));
とexecute() 内部で配列を指定

$user =$stmt->fetch();
で$stmt からデータを fetch() でとりだして
$user へ格納

あとは return で
return $user ? true : false;
というように三項演算子で判定すればOK

スポンサーサイト



テーマ : プログラミング
ジャンル : コンピュータ

コメント

非公開コメント

最新記事
検索フォーム
GREEハコニワ攻略サイト
リンク
カテゴリ
月別アーカイブ
フリーエリア
最新記事
FXプライムレート
最新コメント
最新トラックバック