【发布时间】:2013-12-10 18:22:35
【问题描述】:
我有以下代码来生成我的选项:
<?php
$sql = "SELECT DISTINCT MyID FROM database";
$query = $db->prepare($sql);
$query->execute();
$option = "";
foreach ($query->fetchAll(PDO::FETCH_ASSOC) as $rows) {
$id = $rows[MyID];
$option.="<option>".$id."</option>";
}
?>
<select name="options" id="options" class="options">
<option value="$id">Select an Option</option>
<?php echo $option?>
</select>
我想在下一个查询中使用所选选项的值。像这样:
<?php
$myDB= $db->prepare("SELECT * FROM names WHERE RowID = :option");
$myDB->bindParam(':option', $option); //the value of the option selected in my dropdown
$myDB->execute();
$result = $myDB->fetchAll();
由于某种原因,这不起作用。你能帮忙吗?谢谢
【问题讨论】:
-
$options 应该在 $_POST 或 $_GET 超级全局变量中
-
您是否将选定的值发送到服务器,如果是,如何发送?
-
另外它是
$rows['MyID']而不是$rows[MyID],请注意单引号。 -
感谢大家的评论。 @jeroen 不,我没有将值发送到服务器。我认为这是不必要的,因为我将立即使用选定的值进行查询
-
@user3045800 php 在将输出发送给访问者之前在服务器上运行。如果您想在页面已经加载后运行 php,您需要 ajax - javascript 和 php 的组合 - 向服务器发出请求并返回/处理结果。