2011-12-24 7 views
-1

指定されたアカウントを持つユーザーが自分のページにログインし、非公開の同意書のページを受け取ります。彼らは一番下のフィールドに氏名を入力する必要があります。私は名前が正確に名前であるかどうかを見る方法を知らない。名前が名前の場合は、サイトの内部にリダイレクトする必要があります。彼らが名前以外の何かを入力した場合、彼らはログアウトされ、アカウントは削除されます(多分私のデータベースの名前を変更してログインします)。ここで私を助けるのに役立つかもしれないいくつかのコードです..ありがとう!ユーザーが本当のフルネームを入力したかどうかを確認するためのPHPスクリプト

姓名コード:

<?php echo "$identity->first_name $identity->family_name"; ?> 
+1

私の答えはあなたを助けないかもしれないが、あなたからのページがかかる場合がありますエンタープライズアプリケーション。ユーザーは毎回名前を入力することはできません。大文字の変更、手紙やスペースなどの間違いを追跡するのが難しく、エラーが発生しやすくなります。2人のユーザーが入力を同じように入力することはありません。しかし、あなたの質問に答えるには、値を爆発させて、それらをデータベースにすでにある名前と比較するだけです。 –

答えて

0

まあ、私はそれが非常に簡単であると思います:)

あなたのコントローラのアクションにこのような何かを行う必要があります。

if ($this->getRequest()->isPost() { 
    $post = $this->getRequest()->getPost(); 
    if ($post['first_name'] == $identity->first_name && $post['family_name'] == $identity->family_name) { 
     /* Authentication ok */ 
    } else { 
     /* Authentication failure */ 
    } 
} 
1

彼らはすでに彼らは、メールアドレスとパスワードでログインした場合、それが簡単ではないでしょう、あなたのアカウントを持っている、とあなたはそれらのフィールドを移入した場合姓と名はデータベースから直接ですか?
必要なときに使用できない場合、情報を取得する目的は何ですか?

+0

これは答えではありません。これはコメントです。そして、私をまったく助けないもの。署名として名前を入力する必要があります。彼らが失敗した場合、彼らのアカウントは無効になり、本質的に削除されます。 –

2

ユーザーが登録時に自分の氏名を事前に渡した場合は、NDAでその名前が一致するかどうかを確認できます。あなたが本当の名前を持っていないなら、それを確認することはできません。もう一つのことは、本当のフルネームは少なくとも2つの単語になります。したがって、それらを一致させている間に、のスペースをと他の句読点の文字を慎重に扱います。

関連する問題