gpt4 book ai didi

php - 将数据库中的关键字显示为复选框选项

转载 作者:行者123 更新时间:2023-11-30 01:24:47 25 4
gpt4 key购买 nike

我使用 mysqli 创建了一个数据库,并将关键字存储在名为“Keywords”的表中。我需要使用存储在该表中的关键字以复选框的形式在表单上显示为选项。

因此,如果关键字尚未添加到数据库中,则表单上的复选框将不会显示以供用户选择。实现这一目标的最佳方法是什么?我的 SQL 知识很基础,但我可以了解查询的外观。只是不确定如何将它们显示为复选框。

更新更新更新!我能够让我的数组显示带有复选框:这是我所做的:

<?php
include 'db.php';

$sql = mysqli_query($con,"SELECT * FROM addKeywordTable ORDER BY Keyword_Name ASC");

print <<<HERE
HERE;

while ($row = mysqli_fetch_array($sql))
{
$key = $row['Keyword_Name'];
$id = $row["keyID"];

print <<<HERE
<input type="checkbox" id="$key">$key<br />
HERE;
}
?>

现在我的问题是:如何将检查的值传递到我的新表(profileTable),一个包含表单结果的完全独立的表?

我的表单代码如下所示(2013 年 8 月 9 日星期五):

   <div id="form1profile">
<form method="post" enctype="multipart/form-data" name="addProfile" id="addProfile" >
<fieldset>
<legend>Add/Create a Media Source Profile</legend>
<br>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<th ><label>First Name</label></th>
<td><input name="FName" type="text" id="FName" size="40"></td>
</tr>
<tr>
<th >Middle Name</th>
<td><input name="MName" type="text" id="MName" size="40"></td>
</tr>
<tr>
<th ><label>Last<br>
Name</label></th>
<td><input name="LName" type="text" id="LName" size="40"></td>
</tr>
<tr>
<th><label>Prefix</label></th>
<td><input name="Prefix" type="text" id="Prefix" size="40"></td>
</tr>
<tr>
<th><label>Title
</label></th>
<td><input name="Title" type="text" id="Title" size="40"></td>
</tr>
<tr>
<th><label>Dept</label></th>
<td><input name="Dept" type="text" id="Dept" size="40"></td>
</tr>
<tr>
<th><label>Phone</label></th>
<td><input name="PH1" type="text" id="PH1" size="40"></td>
</tr>
<tr>
<th><label>Other Phone</label></th>
<td><input name="PH2" type="text" id="PH2" size="40"></td>
</tr>
<tr>
<th><label>Email</label></th>
<td><input name="Email" type="text" id="Email" size="40"></td>
</tr>
<tr>
<th><label for="ProfileImg">Photo</label></th>
<td><input name="ProfileImg" type="file" multiple id="ProfileImg" form="addProfile">
</td>
</tr>
<tr>
<th valign="top"><label class="biotextTitle">Bio/Info</label></th>
<td><textarea name="bioLinks" cols="55" rows="25" id="bioLinks" placeholder="Paste Bio/Links here..."></textarea></td>
</tr>
<tr>
<th><label class="Keywords">Keyword</label></th>
<td>
<?php include 'db.php';

$sql = mysqli_query($con,"SELECT * FROM addKeywordTable ORDER BY Keyword_Name ASC");

foreach ($_POST['keyword'] as $keyword) {
if ($keyword) {
// $keyword is a selected keyword
}
}

while ($row = mysqli_fetch_array($sql))
{
$key = $row['Keyword_Name'];
$id = $row["keyID"];


print <<<HERE
<input type="checkbox" name="keyword[$key]" id="$key">$key<br />
HERE;
}
?>
</td>
</tr>
<tr>
<th><label class="tags">Tags</label></th>
<td><input name="Tags" type="text" id="Tags" size="40"></td>
</tr>
<tr>
<th><input name="SaveBtn" type="submit" id="SaveBtn" formaction="insertProfile.php" formmethod="POST" value="Save"></th>
<td></td>
</tr>
</table>
<br />
</fieldset>
</form>
</div>

最佳答案

您可以在复选框中添加名称:

<input type="checkbox" name="keyword[$key]" value="1">$key<br />

这样做,当页面提交时,您只需迭代选定的关键字:

foreach ($_POST['keyword'] as $keyword) {
if ($keyword) {
// $keyword is a selected keyword
}
}

之后您可以获得所有选定的关键字,然后您只需将它们插入到表格中即可。

关于php - 将数据库中的关键字显示为复选框选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18132723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com