首页 > 解决方案 > 将 $_POST 内容存储在多个类别 php 中

问题描述

我想存储文本片段,这些文本片段通过多个类别的表单($_POST)发送到数据库。

因此我的数据库中有 3 个主表

  1. 内容 --> 文本片段存储在这里 ( ID, Content )
  2. 类别 --> 所有现有类别都存储在这里(Cat_ID,Cat_Name)
  3. 关系 --> 例如,所有的关系都应该存储在这里

我在两个类别中发布了一个文本片段,因此我想将文本片段的 ID 和类别 ID 存储在关系表中。对于两个类别,它应该是两个条目。

此片段将所有类别回显到复选框

// SELECT CATEGORIES FROM TABLE tbl_jokes_category
function leweb_categories_from_database() {
$conn = useDB();

$sql = "SELECT * FROM tbl_jokes_categories";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        //tm($row);
        echo "<input type='checkbox' id=" .$row["id_categories"] ." name=leweb_joke_categories_" .$row["id_categories"] . " value=". $row["slug"]. "> " . utf8_encode($row["name"]) . "<br />";
    }
} else {
    echo "0 results";
}

}

这个片段在数据库中插入数据,但它现在只针对一个类别我想修改它,文本片段像现在一样存储,并且类别存储在关系表中(现在存储在内容表中)

// INSERT DATA INTO DATABASE
if(count($_POST)>0) {
    tm($_POST);

    $sql = "
        INSERT INTO tbl_jokes 
            (content, rid_jokes_categories)
                VALUES (
                        '" . $_POST["leweb_joke_content"] . "',
                        '" . $_POST["leweb_joke_categories"] . "'   
                        )
    ";

    if ($conn->query($sql) === TRUE) {
        tm("New record created successfully");
    } 
    else {
        tm("Error: " . $sql . "<br>" . $conn->error);
    }
}

谢谢

标签: phpsqlpost

解决方案


推荐阅读