php下拉选择仅插入表中的第一个单词

时间:2016-03-21 13:43:38

标签: php mysql

<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”。它基本上只存储第一个单词。请高手帮我解决这个问题

4 个答案:

答案 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>';