【问题标题】:Inserting all values of checked in the database在数据库中插入检查的所有值
【发布时间】:2015-01-11 18:13:52
【问题描述】:

我创建了很多复选框。例如:

<input type="checkbox" name="chk_group[]" value="Pharmacist" /><span class="kassem">Pharmacist </span>
<input type="checkbox" name="chk_group[]" value="Police Officer" /><span class="kassem">Police Officer </span>
<input type="checkbox" name="chk_group[]" value="Pottery" /><span class="kassem">Pottery </span>
<input type="checkbox" name="chk_group[]" value="Programming" /><span class="kassem">Programming </span>
<input type="checkbox" name="chk_group[]" value="Puzzles" /><span class="kassem">Puzzles </span>
<input type="checkbox" name="chk_group[]" value="Psychologist" /><span class="kassem">Psychologist </span>

知道用户可以查看任意数量的内容。知道我知道如何使用 PHP 来回显选中的复选框。但我想知道如何将它连接到 phpmyadmin 中的数据库中的一行?好吧,我知道怎么做,但数据库只插入最后一个检查元素的值!我希望它插入所有选中的元素有什么帮助吗?
这是php:

<input type="submit" name="submit" value="Accept" class="hassan" /><br /><br />
<?php
include "db.php";
$id = $_SESSION['user_id'];
if (isset($_POST['submit'])) {
    $optionArray = $_POST['chk_group'];
    for ($i=0; $i<count($optionArray); $i++) {
        echo "<div>" ."<span class='kassem'>" . $optionArray[$i]."<br />" . "<br />" . "</span>". "</div>";
			$hobby = $optionArray[$i];
			$sql = "UPDATE `login1` SET `hobby`='$hobby' WHERE `ID`='$id'";
			$res=mysql_query($sql);
			if($res) {
			  echo "connected";
			  } else {
			  echo "bad";
			}
		}
			
    }

?>

【问题讨论】:

  • Ihavenoideawhatyouretalkingabout.
  • 有人知道标点符号是什么意思吗?
  • 请改进您的问题,添加您的代码!
  • 好的,我会解决的,请稍候。
  • 更好还是您需要更多规范?

标签: php html mysql phpmyadmin


【解决方案1】:

您正在与记录的其余部分在同一表中的一列中记录爱好值。那只能保存一个值。

你应该标准化你的数据库。

创建另外两个表。

  • 用于保存hobby 的所有可能值(以及主键的 id 列)
  • junction table,其中两列是hobby 表和login1 表上的外键。

然后在联结表中为每个选中的复选框插入一个新条目。

【讨论】:

  • 好的,谢谢分配,但我有问题要理解。首先,在第一张桌子上我要写两列?一个用于 id,另一个用于所有可能的爱好写值? (对不起这个问题,但我是初学者。)第二,login1表我不明白login1有什么用?
  • login1 是您已有的表。大概它包含一堆关于特定用户的数据。查看我在答案中链接到的联结表上的维基百科页面,它有图表。
猜你喜欢
  • 2023-04-01
  • 2021-12-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多