0
我有一个表格,它只包含id &类别, 然后我有一个下拉框使用类别列填充表格。 下一步是当点击提交按钮时,它将所有数据发送到另一个表[product_table],所有数据提交到产品表中,而不是插入类别名称插入它的id。 我试过多个修补程序无济于事,我想最简单的方法是将输出类别'1','2','3'...并使用查询将其转换为'帽子',衬衫',鞋'...使用category_table。 我不是100%确定如何虽然做到这一点,从一个表格插入下拉数据到另一个表格
的index.php
<div id="addProduct">
<?PHP require_once("addProduct.php"); ?>
<div id="pageSubTitle" style="display:block">
<form method="post" action="">
<h2>Add a Product</h2>
<table>
<tr>
<td><label>Product Name: </label> <input type="text" id="productName" name="productName" required></td>
<td><label id="categoryLabel"> Catagory: </label>
<?php
mysql_connect("localhost", "root","") or die(mysql_error());
mysql_select_db("web_scripting") or die(mysql_error());
$query = "SELECT id,category FROM catagory_table ORDER BY category ASC";
$result = mysql_query($query) or die(mysql_error()."[".$query."]");
?>
<select type="text" id="category" name="category">
<?php
while ($row = mysql_fetch_array($result))
{
echo "<option value='".$row['id']."'>'".$row['category']."'</option>";
}
?>
</select><p id="refreshCatagoryOnNewProduct"> New catagory not appearing?<br /> <a href="index.php">Click Here</a></p></td>
</tr>
<tr>
<td><label>Stock: </label> <input type="number" id="stock" name="stock" required></td>
<td><label id="costLabel">Cost: </label> <input type="text" id="cost" name="cost" required></td>
</tr>
<tr>
<td><label>Description: </label> <textarea type="text" id="description" name="description" cols="40" rows="5" maxlength="250" placeholder="Enter Description Here (Max 250 Characters...)" required></textarea></td>
<td></td>
</tr>
<tr>
<td><input id="productSubmit" type="submit" value="Add Product" onclick="submitProduct()"></td>
</tr>
</table>
</form>
</div>
</div>
addProduct.php
<?PHP
$db_host = "localhost";
$db_name = "web_scripting";
$db_root = "root";
$db_pass = "";
$odb = new PDO("mysql:host=$db_host;dbname=$db_name", $db_root, $db_pass);
if(isset($_POST['productName'])) {
$productName = $_POST['productName'];
$categoryName = $_POST['category'];
$stock = $_POST['stock'];
$cost = $_POST['cost'];
$description = $_POST['description'];
$q = "INSERT INTO Product_table(name, category, stock, cost, description) VALUES(:name, :category, :stock, :cost, :description);";
$query = $odb->prepare($q);
$results = $query->execute(array(
":name" => $productName,
":category" => $categoryName,
":stock" => $stock,
":cost" => $cost,
":description" => $description
));
}
?>
==>我知道有几个拼写错误的代码(通常是category/catagory),但它始终如一,
任何帮助/建议将不胜感激
它插入'id',就像在设置选项值到'id' - >'echo'