繁体   English   中英

使用Dropdown值更新MySql DB

[英]Updating MySql DB with Dropdown values

我的更新语句无法正常工作,我正在尝试从数据库中提取数据,并在其中包含“ Y”或“ N”的下拉列表中,在提交值时将其输入数据库并刷新页面。

到目前为止,我有我的项目列表,每个项目都有正确填充的下拉列表,现在是我的提交无法正常工作。

<?php
    $updatedFeatProd = $_POST['featuredProduct'];
    var_dump($updatedFeatProd);

    if ($_POST) {
        foreach ($_POST['featuredProduct'] as $key => $val) {
            $query = 'UPDATE tblProducts SET featuredProduct = ' . $updatedFeatProd . '
                    WHERE fldID = ' . $val;
            $sql = dbQuery($query);
        }
    }
    $sql = dbQuery('SELECT fldId, fldName, featuredProduct FROM tblProducts');
?>

<form method="post" action="#" name="featuredProd">
    <table>
    <tr><td><p>Product Name</p></td><td><p>Is a featured product?</p></td></tr>

<?php
    $products = dbFetchAll($sql);
    foreach ($products as $product) { 
        //var_dump($product['fldName']);
?>
    <tr>
        <td>
            <p><?php echo $product['fldName']; ?></p>
        </td>
        <td>
            <select name="featuredDropdown">;
<?php
        if ($product['featuredProduct'] == 'Y') {
?>
                <option  value="<?php $product['fldId'] ?>"><?php echo $product['featuredProduct'] ?></option>
                <option value="<?php $product['fldId'] ?>">N</option>
<?php 
        } else {
?>
                <option value="<?php $product['fldId'] ?>"><?php echo $product['featuredProduct'] ?></option>
                <option value="<?php $product['fldId'] ?>">Y</option>
<?php 
        }
?>
            </select>
        </td>
    </tr>

<?php 
    }
?>

这里的陈述没有多大意义。 您有一个下拉列表,其中一个插槽带有ProductName,另一个插槽带有“ N”。

一旦用户为产品选择了“ N”,他们就不知道他们说了“不”了,因为他们不再能够看到为其选择“否”的产品名称。

最好提供一个包含产品名称的<label>和旁边的YES / NO下拉菜单供他们选择。

但是,您的更新代码无法正常工作的原因是您调用了下拉菜单featuredDropdown

<Select name="featuredDropdown">

并且您正在尝试在更新代码中处理一个名为featuredProduct的字段

foreach ($_POST['featuredProduct'] as $key => $val) {

下一个问题可能是您要输出多个<Select name="featuredDropdown">因此您需要像这样将其放入数组中:

<Select name="featuredDropdown[]">

然后,您将在$ _POST数组中有一个featuredDropdown数组。 $_POST['featuredDropdown'][]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM