<center><?php
include "config.php"; // Database connection using PDO
//$sql="SELECT name,id FROM student";
$sql="SELECT Product_Name, id FROM stockcount";
/* You can add order by clause to the sql statement if the names are to be displayed in alphabetical order */
?>
<select id = 'ProductName' name='productName' onchange="" >Product_Name </option>"
<?php
foreach ($conn->query($sql) as $row){//Array or records stored in $row
echo "<option value=$row[Product_Name]>$row[Product_Name
]</option>";
/* Option values are added by looping through the array */
}
?>
</select>
</center><p></P>
此代码显示stockcount表中的所有产品名称。
<?PHP
include ('config.php');
$date = $_POST['date'];
$productname = $_POST['productName'];
$cartons = $_POST['cartons'];
$send_to = $_POST['send_To'];
$sql = "INSERT INTO storerequest (Date, Product_Name, Cartons, Send_To) VALUES ('$date','$productname', '$cartons', '$send_to')";
if ($conn->query($sql)===TRUE) {
header("Location:orderrequest.php");
}
else {
echo "Error is " .$sql."<br>". $conn->error;
}
$conn->close();
?>
这会将下拉列表中的选择添加到storerequest表中。
现在问题是如果我从下面选择一个名为“Motor Car”的选项。它仅在storerequest表中插入“Motor”。当我将产品名称更改为“Motor-Car”时,它会插入“Motor-Car”。它基本上只存储第一个单词。请高手帮我解决这个问题
答案 0 :(得分:1)
您忘记了"
的{{1}}标志:
value
答案 1 :(得分:0)
需要更改rollapply
声明。
改变
echo
到
echo "<option value=$row[Product_Name]>$row[Product_Name]</option>";
答案 2 :(得分:0)
是的,或者如果您需要html的双引号,请转义它们: `echo&#34; $ row [Product_Name]&#34 ;;
答案 3 :(得分:0)
您的问题是,您没有将value
属性的值包含在单引号或双引号中。
即。 value=$row[Product_Name]
echo "<option value=$row[Product_Name]>$row[Product_Name]</option>";
您不必将引号中的属性值包装起来,但是如果值中有空格,则需要这样做Motor Car
所以你必须这样做
echo "<option value='$row[Product_Name]'>$row[Product_Name]</option>";
或者
echo '<option value="' . $row['Product_Name'] . '">' . $row['Product_Name'] . '</option>';