彼が去った都市に関するユーザーデータを取得するフォームを作成しました。フォームは、プロファイルと呼ばれるテーブルにデータを格納します。プロファイルテーブルにデータを挿入する関数を使用しています。すでにデータがある場合、関数はテーブルを更新するだけです。ユーザーが都市フィールドにデータを挿入せずに送信を押した場合、何も送信されないため、テーブルは以前のデータを保持し続けます。
フォームでは、ユーザーがazまたはスペース文字のみを挿入するように検証を行います。
検証に次のコードを使用しました。
if( empty($_POST) === false ){
if( empty($errors) === true ){
if( preg_match('/^[a-zA-Z ]+$/', $_POST['city']) ===0 ){
$errors[]='<font color="#963">City must only contains a-z and spaces</font>';
}
}
}
できます!しかし、現在の問題は、ユーザーがフォームを空のままにして送信を押すと、上記のコードがデータを配置するように強制することです(たとえば、都市にはazとスペースのみが含まれている必要があります)。ユーザーがデータを入力した場合にのみ、上記のコードを使用してフォームを検証するにはどうすればよいですか。そうでなければ、問題なく続行します。