あなたの質問では、テーブルの構造について言及していません。あなたの会社のテーブルを好きなようにする(または作る)ことができます
company table
+--------+-----------+-------------------+
| id | company | some other field |
+--------+-----------+-------------------+
| 1 | abc | xxxx |
+--------+-----------+-------------------+
| 2 | def | xxxx |
+--------+-----------+-------------------+
//id は主キーにする必要があります
your product table (each product is made by some company)
+--------+-----------+-------------------+
| id | product | company_id |
+--------+-----------+-------------------+
| 1 | p1 | 2 |
+--------+-----------+-------------------+
| 2 | p2 | 1 |
+--------+-----------+-------------------+
今、あなたは好きなことができます
//code to show list of companies
$sql = "SELECT `id`, `company` FROM `company` LIMIT 0, 30 ";
$result=mysql_query($sql);
echo "<select Company='Company'>";
while ($row = mysql_fetch_array($result)) {
echo "<option value='" . $row['id'] ."'>" . $row['Company'] ."</option>";
}
echo "</select>";
Edit:
これで、ドロップダウンに会社リストが表示されます。<form action='' method = "POST">
しかし、あなたの質問でを見逃したか、ファイルにある可能性があると思います。完全に機能的なフォームを作成します。
<?php
//change according to your settings
mysql_connect('localhost','root','');
mysql_select_db("st") or die(mysql_error());
?>
<form action="st2.php" method = "POST">
<label for="company_id">Compay</label>
<select name="company_id" id="company_id">
<?php
$sql = "SELECT `id`, `company` FROM `company` LIMIT 0, 30 ";
$result=mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
echo "<option value='" . $row['id'] ."'>" . $row['company'] ."</option>";
}
?>
</select>
<label for="product_id">Product</label>
<select name="product_id" id="product_id">
<?php
$sql = "SELECT `id`, `product` FROM `product` LIMIT 0, 30 ";
$result=mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
echo "<option value='" . $row['id'] ."'>" . $row['product'] ."</option>";
}
?>
</select>
<label for="category_id">Category</label>
<select name="category_id" id="category_id">
<?php
$sql = "SELECT `id`, `category` FROM `category` LIMIT 0, 30 ";
$result=mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
echo "<option value='" . $row['id'] ."'>" . $row['category'] ."</option>";
}
?>
</select>
<input type="submit" name = "Submit"/>
</form>
注文テーブルに次のような構造を持たせます
+--------+--------------+-------------+--------------+
| id | company_id | product_id | category_id |
+--------+--------------+-------------+--------------+
| 1 | 1 | 2 | 8 |
+--------+--------------+-------------+--------------+
ここでも id は主キーで、company_id = company テーブルの id です。product_id と category_id は、そのテーブルに固有のテーブルの ID でもあります。
=> ファイル save.php を作成し、ここでフォームから送信されたデータを処理します
<?php
//change according to your settings
mysql_connect('localhost','root','');
mysql_select_db("st") or die(mysql_error());
if($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['Submit'])) {
var_dump($_POST);
$company_id = $_POST['company_id'];
$product_id = $_POST['product_id'];
$category_id = $_POST['category_id'];
//Note: sanitize and validate data before saving in database
$sql = "INSERT INTO orders VALUES('', $company_id, $product_id, $category_id)";
$result = mysql_query($sql);
if($result) {
echo "data saved";
} else {
echo "error";
}
}?>
//html の入力フィールド、php の PDO クラス、データのサニタイズと検証、SQL クエリの詳細を読む。
問題:更新:
コードを実行すると。私はあなたの分野のいくつかについて混乱していました。このフォームで何をしようとしていますか。私が理解
1
していることは、顧客が注文を追加できることです。しかし、なぜ顧客を選択するドロップダウンがあり、実際に顧客ラベルで会社を表示しているのですか。
2
いくつかの入力フィールド -
注文-> ユーザーが注文名または order_id を提供します。bcoz ユーザーは同じ注文 ID を 2 回行うことができます。
日付-> 提出の日付、完了日、または現在の日付。現在の日付の場合は、バックエンドで行う必要があります。
チェックボックス-> チェックボックスが
空白になって出荷されない理由 - >
税金-> ユーザーは製品にかかる税金を提示します。OK (私が間違っている可能性があります)
価格-> ユーザーは製品ごとの価格を提示します。間違っている)
合計-> ユーザーが合計を入力するか、価格 * 数量 + 合計税として計算する必要があります。その場合、入力ボックスは必要ありません
どの情報を実装する前に、より明確にしてください。ユーザーから取得したいもので、安全かどうか。または、ユーザー用に生成します。フォームはユーザーを db にコメントし、深刻な問題を引き起こす可能性があるためです。