在php中,如何从MySQL中获取多个行,并使它们成为要插入数据库中另一个表的复选框的值?
我有一个名为subjects的表和另一个名为classes的表。app am大楼的设计是,用户首先填写表格,将学校提供的科目发送到我的“科目”表。然后,他填写另一张表格,在学校中创建班级,选择在创建的新班级中提供哪些科目(从表中选择“科目”)。在表单提交时,他们的输入进入一个表“classes”,该表有以下行:;id,className,classSubjects 这是我的密码:在php中,如何从MySQL中获取多个行,并使它们成为要插入数据库中另一个表的复选框的值?,php,mysql,Php,Mysql,我有一个名为subjects的表和另一个名为classes的表。app am大楼的设计是,用户首先填写表格,将学校提供的科目发送到我的“科目”表。然后,他填写另一张表格,在学校中创建班级,选择在创建的新班级中提供哪些科目(从表中选择“科目”)。在表单提交时,他们的输入进入一个表“classes”,该表有以下行:;id,className,classSubjects 这是我的密码: <?php require_once 'controller/connect.php'; ?> <
<?php require_once 'controller/connect.php'; ?>
<!DOCTYPE html>
<html><head><title>TTApp</title></head>
<body>
<form action="controller/classReg.php" method="post">
<label>Class Name</label>
<input type="text" name="className" required="true"><br><br>
<label>Subjects Offered</label>
<?php
$sql = "SELECT * FROM subjects";
$result = $connect->query($sql);
if($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "<input type='checkbox' name='classSubjects' value=".$row['title'].">
".$row['title']." ";
}
}
?>
<br><br><input type="submit" name="submit" value="Register Class">
</form>
</div>
</body>
</html>
塔普
类名
提供的科目
和controller/classReg.php,如下所示:
<?php
require_once 'connect.php';
if($_POST) {
if(isset($_POST['className'])) {
$className= $_POST['className'];
}
if(isset($_POST['classSubjects'])) {
$classSubjects = array($_POST['classSubjects']);
echo $classSubjects;
} else {
echo "no class subject";
}
$sql = "INSERT INTO classes (className, classSubjects) VALUES ('$className', '$classSubjects')";
if($connect->query($sql) === TRUE) {
echo "<p>New Record Successfully Created</p>";
echo "<a href='../create.php'><button type='button'>Back</button></a>";
echo "<a href='../index.php'><button type='button'>Home</button></a>";
} else {
echo "Error " . $sql . ' ' . $connect->connect_error;
}
$connect->close();
}
?>
首先更改此行:
echo“
致:
echo”
然后在这里r controller/classReg.php:
<?php
require_once 'connect.php';
if ($_POST) {
if (isset($_POST['className'])) {
$className = $_POST['className'];
}
if (isset($_POST['classSubjects'])) {
$classSubjects = $_POST['classSubjects'];
}else {
echo "no class subject";
}
$sql = "INSERT INTO classes (className, classSubjects) VALUES (?, ?)";
$stmt = $connect->prepare($sql);
foreach ($classSubjects as $key => $subject) {
$stmt->bind_param("ss", $className, $subject);
}
if ($stmt->execute()) {
echo "<p>New Record Successfully Created</p>";
echo "<a href='../create.php'><button type='button'>Back</button></a>";
echo "<a href='../index.php'><button type='button'>Home</button></a>";
} else {
echo "Error " . $connect->error;
}
$stmt->close();
$connect->close();
}
?>
将name='classSubjects
更改为name='classSubjects[]
<?php
require_once 'connect.php';
if ($_POST) {
if (isset($_POST['className'])) {
$className = $_POST['className'];
}
if (isset($_POST['classSubjects'])) {
$classSubjects = $_POST['classSubjects'];
}else {
echo "no class subject";
}
$sql = "INSERT INTO classes (className, classSubjects) VALUES (?, ?)";
$stmt = $connect->prepare($sql);
foreach ($classSubjects as $key => $subject) {
$stmt->bind_param("ss", $className, $subject);
}
if ($stmt->execute()) {
echo "<p>New Record Successfully Created</p>";
echo "<a href='../create.php'><button type='button'>Back</button></a>";
echo "<a href='../index.php'><button type='button'>Home</button></a>";
} else {
echo "Error " . $connect->error;
}
$stmt->close();
$connect->close();
}
?>