Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中,如何从MySQL中获取多个行,并使它们成为要插入数据库中另一个表的复选框的值?_Php_Mysql - Fatal编程技术网

在php中,如何从MySQL中获取多个行,并使它们成为要插入数据库中另一个表的复选框的值?

在php中,如何从MySQL中获取多个行,并使它们成为要插入数据库中另一个表的复选框的值?,php,mysql,Php,Mysql,我有一个名为subjects的表和另一个名为classes的表。app am大楼的设计是,用户首先填写表格,将学校提供的科目发送到我的“科目”表。然后,他填写另一张表格,在学校中创建班级,选择在创建的新班级中提供哪些科目(从表中选择“科目”)。在表单提交时,他们的输入进入一个表“classes”,该表有以下行:;id,className,classSubjects 这是我的密码: <?php require_once 'controller/connect.php'; ?> <

我有一个名为subjects的表和另一个名为classes的表。app am大楼的设计是,用户首先填写表格,将学校提供的科目发送到我的“科目”表。然后,他填写另一张表格,在学校中创建班级,选择在创建的新班级中提供哪些科目(从表中选择“科目”)。在表单提交时,他们的输入进入一个表“classes”,该表有以下行:;id,className,classSubjects

这是我的密码:

<?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();
    }

    ?>