![](/img/trans.png)
[英]Zipping and downloading multiple files from multiple columns in mysql database
[英]selectbox with multiple columns from mysql database
我有以下php
代码,它非常适合显示1列,但是我需要它来显示10列的值。
<select size="1" name="domeinnaam">
<?php
include '../config.php';
$sql = "SELECT * FROM megabase";
$resultaat = mysql_query($sql) or die (mysql_error());
while ($row = mysql_fetch_array($resultaat))
{
echo '<option>' . $row['domeinnaam1'] . '</option>';
}
?>
</select>
我试图添加第二个echo
,但是破坏了代码。 我也尝试过
echo '<option>' . $row['domeinnaam1'] . $row['domeinnaam2'] . '</option>';
但这没用。 因为结果将显示如下:domain1
域1
domain1domain2
它应该是
域1
域1
域1
域2
有什么用?
假设您希望每个域名都作为一个选项显示在select中,并且数据库中的域名字段是domeinnaam1,domeinnaam2,domeinnaam3等,则可以执行以下操作...
<?php
include '../config.php';
$sql = "SELECT * FROM megabase";
$resultaat = mysql_query($sql) or die (mysql_error());
$domains = array();
while ($row = mysql_fetch_array($resultaat))
{
if (!empty($row['domeinnaam1'])) $domains[] = $row['domeinnaam1'];
if (!empty($row['domeinnaam2'])) $domains[] = $row['domeinnaam2'];
}
?>
<select size="1" name="domeinnaam">
<?php
foreach ($domains as $domain)
{
echo "<option>$domain</option>";
}
?>
</select>
您应该使用PDO代替mysql_函数,否则ADODB库运行良好。 从PHP 5.5开始不推荐使用mysql_函数
您的代码不应具有主要的PHP配置或此类的初始化。 我看起来不聪明。 整理一下。
<select size="1" name="domeinnaam">
<?php
include '../config.php';
$sql = "SELECT * FROM megabase";
$resultaat = mysql_query($sql) or die (mysql_error());
while ($row = mysql_fetch_array($resultaat))
{
echo '<option>' . $row['domeinnaam1'] . '</option>';
}
?>
</select>
<?php
include '../config.php';
$sql = "SELECT * FROM megabase";
$resultaat = mysqli_query($conn, $sql) or die ($conn->mysqli_error());
?>
<select size="1" name="domeinnaam">
<?php
while ($row = mysqli_fetch_array($conn, $resultaat))
{
echo '<option>' . $row['domeinnaam1'] . '</option>';
}
?>
</select>
接下来,不要真正尝试破坏选项,可以使用JQuery之类的javascript框架来实现更时尚的选择。 我真的不认为您可以这样做:
while ($row = mysqli_fetch_array($conn, $resultaat))
{
echo '<option>' . $row['domeinnaam1'] . '<br />' .$row['domeinnaam2']. '</option>';
}
使用JQuery,您可以在div中列出一个列表项:
<ul>
while ($row = mysqli_fetch_array($conn, $resultaat))
{
echo '<li>' . $row['domeinnaam1'] . '<br />' .$row['domeinnaam2']. '</li>';
}
</ul>
然后将选定的项目传递给隐藏字段,以供以后使用onclick事件使用。
如果要在一个循环中将10列显示为单独的选项,可以这样做。
while ($row = mysqli_fetch_array($conn, $resultaat))
{
echo '<option>' . $row['domeinnaam1'] .'</option>';
echo '<option>' . $row['domeinnaam2'] .'</option>';
echo '<option>' . $row['domeinnaam3'] .'</option>';
echo '<option>' . $row['domeinnaam4'] .'</option>';
echo '<option>' . $row['domeinnaam5'] .'</option>';
echo '<option>' . $row['domeinnaam6'] .'</option>';
echo '<option>' . $row['domeinnaam7'] .'</option>';
echo '<option>' . $row['domeinnaam8'] .'</option>';
echo '<option>' . $row['domeinnaam9'] .'</option>';
echo '<option>' . $row['domeinnaam10'] .'</option>';
}
我不知道这在哪里有用以及如何使用。 编程中可能发生任何事情。 :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.