我创建了一个动态下拉列表,用于填充数据库中的数据。直到现在它的工作正常。现在我想将下拉列表中的选定数据添加到我的数据库中。我已经尝试了各种可能的方法,但无法在我的数据库中插入值,以下程序没有给出任何错误消息,但它也没有在我的数据库中插入数据。请检查一下。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
</body>
</html>
<?php
session_start();
if(isset($_SESSION['username']))
{
include 'connect.php';
$select_query= 'Select * from category';
$select_query_run = mysql_query($select_query);
echo "
<form action='insert_product.php' method='POST' ></br>
Product Name: <input type='text' name='product_name' /></br>
Price : <input type= 'text' name= 'price' /></br>
Description : <input type='text' name='description' />*Seperate by Comma</br>
";
// Drop Down Display
echo "<select name='category'>";
while ($select_query_array= mysql_fetch_array($select_query_run) )
{
echo "<option value='".$select_query_array['category_id']."' >".
htmlspecialchars($select_query_array["name"])."</option>";
}
$selectTag= "<input type='submit' value='Insert' /></select></form>";
echo $selectTag;
//Drop Down End!
if(isset($_POST['product_name']) && isset($_POST['price']) && isset($_POST['description']) )
{
echo $product_name = $_POST['product_name'];
echo $price = $_POST['price'];
echo $description = $_POST['description'];
echo $category = $_POST['category'];
//Problem Area
$query= "insert into products (name, price, description, category_id )
VALUES( '$product_name', $price, '$description', $category )";
if($query_run= mysql_query($query))
{
echo 'Data Inserted';
}
else
{
'Error In SQL'.mysql_error();
}
}
else
{
echo 'empty Field';
}
}
else
{
echo 'You Must Log in To View this Page!';
}
?>
答案 0 :(得分:0)
变化:
$select_query= 'Select * from category';
$select_query_run = mysql_query($select_query);
echo "
<form action='insert_product.php' method='POST' ></br>
Product Name: <input type='text' name='product_name' /></br>
Price : <input type= 'text' name= 'price' /></br>
Description : <input type='text' name='description' />*Seperate by Comma</br>
<input type='submit' value='Insert' />";
echo "<select name='category'>";
while ($select_query_array= mysql_fetch_array($select_query_run) )
{
echo "<option value='".$select_query_array['category_id']."' >".
htmlspecialchars($select_query_array["name"])."</option>";
}
echo "</select></form>";
查询:
$query= "insert into products (name, price, description, category_id, name) VALUES('$product_name', $price, '$description', '".$_POST['category']."' )";
答案 1 :(得分:0)
我认为,你必须使用帖子“类别”而不是选项的价值 ES。
$category = $_POST['category']);
nsert into products (name, price, description, category_id, name)
VALUES('$product_name', $price, '$description', '$category"' )";