私はここでかなり単純なことをしています。基本的なクエリですが、さらに一歩先に進むことにしたとき、私は自分自身にカーブを投げました。
基本的には次のようになります。
- ユーザーがフォームに値を入力したかどうかを確認します
- そうでない場合は、キックアウトして基本的なエラーを表示します
- もしそうなら、データベースに対してその値をチェックして、それが有効/存在することを確認します
- 有効/存在する場合は、セッション変数を設定して注文フォームに移動します
- そうでない場合は、キックアウトして基本的なエラーを表示します
私が今やりたいことは、そこに別のチェックを追加することです.ユーザーIDが存在する場合は、注文ステータスを確認する必要があります.すでに注文している場合は、キックアウトして、すでに注文していることを知らせる簡単なメッセージを表示します.注文し、処理中です。まだ注文していない場合は、上記の注文フォームに進みたいと思います。
データベースには「注文済み」というフィールドがあり、注文した場合は 1、まだ注文していない場合は 0 になります。
これが機能している私のコードです。いくつかのことを試しましたが、爆発し続けます。
<?php
session_start();
$db_host = 'localhost';
$db_username = 'xxxxxx';
$db_password = 'xxxxxxxx';
$db_name = 'xxxxxxxx';
mysql_connect( $db_host, $db_username, $db_password) or die(mysql_error());
mysql_select_db($db_name);
if ($_SERVER['REQUEST_METHOD'] == "POST") {
/** Check whether the user has filled in the text field "employee_id" */
if ($_POST['employee_id'] == "") {
$IdIsEmpty = true;
}else{
$employee_id = $_POST['employee_id'];
if(mysql_num_rows(mysql_query("SELECT employee_id FROM TABLE_2 WHERE employee_id = '$employee_id'"))){
// if userid exists
$_SESSION['emp_id'] = $employee_id;
header('Location: orderform.php');
exit;
}
$IdNotFound = true;
}
}?>
<head>
</head>
<body>
<b>Please enter your Employee ID: </b><br><br>
<form class="" action="index.php" method="post" enctype=
"multipart/form-data" name="test_form" id="test" accept-charset=
"utf-8"><input type="text" name="employee_id">
<?php
/** Display error messages if "employee_id" field is empty or if ID does not exist */
if ($IdIsEmpty) {
echo ("<br>");
echo ("<b>Enter your employee ID, please!</b>");
echo ("<br>");
}?>
<?php
/** Display error messages if "employee_id" field is empty or if ID does not exist */
if ($IdNotFound) {
echo ("<br>");
echo ("<b>Your employee ID not found!</b>");
echo ("<br>");
}?>
<input type="submit" value="Submit">
</form>
</body>
</html>