INSERT INTO不起作用(仅在某一点上)


INSERT INTO doesnt work (only at one point)

我有问题。。。我的网页上有一个表单,管理员可以通过sql"INSERT INTO"命令创建事件。在同一个网站上,他可以查看这些事件的注册,并可以通过sql"UPDATE"命令接受或拒绝这些注册。整个注册部分运行良好。。。但不是事件创建。。。该代码保存表单中所有需要的数据(日期、时间等),并返回一个$check变量,如果变量为true,则接收所有数据,并发送"INSERT INTO"命令。。。这不起作用。。。$chekc变量为true。。。

这是表单的代码:

<form method="post" action="">
<input type="number" name="Tag" title="Tag" placeholder="Tag" Required>
<input type="number" name="Monat" title="Monat" placeholder="Monat" Required>
<input type="number" name="Jahr" title="Jahr" placeholder="Jahr" Required>
<input type="number" name="Stunde" title="Stunde" placeholder="Stunde" Required>
<input type="number" name="Minute" title="Minute" placeholder="Minute" Required>
<input type="text" name="Ort" title="Ort" placeholder="Ort" Required>
<input type="number" name="Preis" title="Preis" placeholder="Preis" Required>
<input type="number" name="AHelfer" title="AHelfer" placeholder="Aufbau Helfer" Required>
<input type="number" name="BHelfer" title="BHelfer" placeholder="Abbau Helfer" Required>
<input type="submit" name="Erstellen" title="Erstellen" value="Erstellen">
</form>

这是验证和插入数据的代码:

if (!empty($_POST[Erstellen]))
    {
        $check = true;
        if (!empty($_POST[Tag]))
        {
            $Tag = str_replace('''', '', str_replace('"', '', $_POST["Tag"]));
        }else{
            $check = false;
        }
        if (!empty($_POST[Monat]))
        {
            $Monat = str_replace('''', '', str_replace('"', '', $_POST["Monat"]));
        }else{
            $check = false;
        }
        if (!empty($_POST[Jahr]))
        {
            $Jahr = str_replace('''', '', str_replace('"', '', $_POST["Jahr"]));
        }else{
            $check = false;
        }
        if (!empty($_POST[Stunde]))
        {
            $Stunde = str_replace('''', '', str_replace('"', '', $_POST["Stunde"]));
        }else{
            $check = false;
        }
        if (!empty($_POST[Minute]))
        {
            $Minute = str_replace('''', '', str_replace('"', '', $_POST["Minute"]));
        }else{
            $check = false;
        }
        if (!empty($_POST[Ort]))
        {
            $Ort = str_replace('''', '', str_replace('"', '', $_POST["Ort"]));
        }else{
            $check = false;
        }
        if (!empty($_POST[Preis]))
        {
            $Preis = str_replace('''', '', str_replace('"', '', $_POST["Preis"]));
        }else{
            $check = false;
        }
        if (!empty($_POST[AHelfer]))
        {
            $AHelfer = str_replace('''', '', str_replace('"', '', $_POST["AHelfer"]));
        }else{
            $check = false;
        }
        if (!empty($_POST[BHelfer]))
        {
            $BHelfer = str_replace('''', '', str_replace('"', '', $_POST["BHelfer"]));
        }else{
            $check = false;
        }
        if ($check)
        {
            echo 'check ';
            $sql = "INSERT INTO Veranstaltungen (Tag, Monat, Jahr, Stunde, Minute, Preis, Ort, AHelfer, BHelfer) VALUES ('$Tag', '$Monat', '$Jahr', $Stunde', '$Minute', '$Preis', '$Ort', '$AHelfer', '$BHelfer')";
            $eintragen = mysqli_query($verbindung, $sql);
            echo $eintragen;
        }

这是数据库结构

$sql = "INSERT INTO Veranstaltungen (Tag, Monat, Jahr, Stunde, Minute, Preis, Ort, AHelfer, BHelfer) VALUES ('".$Tag."', '".$Monat."', '".$Jahr."', '".$Stunde."', '".$Minute."', '".$Preis."', '".$Ort."', '".$AHelfer."', '".$BHelfer."')";

你忘了连在一起的"."(点)。试试这个

我不知道为什么它现在能工作,但它确实。。。在我尝试了你所有的技巧和东西之后,我只是ctrl+z到上面发布的第一个版本,它就起作用了。。。非常感谢您的评论和回答!