![](/img/trans.png)
[英]How do I use SESSION data to SELECT 1 database entry and then INSERT into another table with data from a form as well with PHP and MySQL?
[英]How do I echo SQL data from database table into a <select> form?
我想知道是否有人可以提供帮助。
我试图将某些SQL数据回显为<select>
形式,每个<option>
作为表的不同行。
例如,如果我的表有两列“用户名”和“类别”,并且同一用户名有两行,则数据如下:
“用户名:test,类别:test1。”
&第二行为:
“用户名:test,类别:test2。”
如何在选择表单中将“ test1”和“ test2”作为两个选项进行回显?
表名是'testtable',所以我当前的$sql
查询是("SELECT 'category' FROM 'testtable' WHERE 'username = \\'$user\\'")
$user
当前设置为$_SESSION['username']
代码示例将非常有帮助,非常感谢。 我似乎无法让他们在论坛上找到的示例中有所呼应。
您从查询中得到所有行:
<?php
$query = "SELECT category FROM testtable WHERE username = '" . $_SESSION['username'] ."'";
$result = mysql_query($query);
$options = array();
while($row = mysql_fetch_array($result))
{
$options[] = "<option>" . $row['category'] . "</option>";
}
?>
<select>
<?php echo implode("",$options); ?>
</select>
尝试这个:
<select>
<?php while($row = mysql_fetch_array($result)
{?>
<option><?php echo $row['category'];?></option>
<?php }?>
</select>
尝试这个
<select name="your_select_name" id="your_select_id">
<option value="">Select</option>
<?php
$username = $_SESSION['username'];
$res = mysql_query("SELECT `category` FROM `testtable` WHERE `username` = '$username' ") or die(mysql_error());
while($row = mysql_fetch_assoc($res))
{
echo '<option value="'.$row['category'].'">'.$row['category'].'</option>';
}
?>
</select>
更新2:
对于不同的类别,请使用此
$res = mysql_query("SELECT DISTINCT(`category`) as category FROM `testtable` WHERE `username` = '$username' ") or die(mysql_error());
要么
$res = mysql_query("SELECT `category` FROM `testtable` WHERE `username` = '$username' GROUP BY category ") or die(mysql_error());
您的选择查询有一个错误:用户名前没有成对的单引号,以及围绕类别的单引号-这是否可能是您无法执行此操作的原因?
<?php
$result = mysql_query($query);
echo "<select>";
while($row = mysql_fetch_array($result))
{
echo "<option>".$row['category']."</option>";
}
echo "</select>";
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.