将选择结果发布到另一个sql表

时间:2017-05-29 17:49:28

标签: php sql

我无法将select函数的结果发布到sql表

我有一个select函数从sql表中提取数据(参见下面的代码),

label for="test">Test:</label><br>
    <select id="test" name="test">
<?php
    $test = mysql_query("SELECT date FROM test WHERE selected is null");
    while ($row = mysql_fetch_array($test)){
    echo '<option value="'. $row['value'] .'">'. $row['date'] .'</option>';
    }?>
    </select>

表单提交后,会加载另一个名为sumbit.php的页面,其中包含以下代码

<?php
$name = $_POST['name'];
$phone = $_POST['phone'];
$email = $_POST['email'];
$test = $_POST['test'];
$comment = $_POST['comment'];

$sql = "INSERT INTO submit (name,phone,email,test,comments) 
VALUES 
('$name','$phone','$email','$test','$comment')";

if (!mysql_query($sql)) {
    die('Error: ' . mysql_error());
}

mysql_close();
?>

我的问题是测试字段没有更新(其余字段是文本字段并在提交表中更新),请有人可以告知我的代码有什么问题或建议更好的方式发布结果选择框进入sql表?

1 个答案:

答案 0 :(得分:0)

首先说几句建议,你绝对需要了解PDO和准备好的陈述,阅读this tutorial以了解如何正确地做事。

您需要在SQL语句中包含value字段,而$row['value']始终评估为null这会导致您的option标记没有值,导致$_POST['test']始终为空。