【问题标题】:PHP MySQL INSERT query not inserting to tablePHP MySQL INSERT查询未插入表
【发布时间】:2015-03-27 12:53:17
【问题描述】:

我不知道为什么我的 INSERT 查询失败了。我仔细检查了 phpMyAdmin 中的查询,它工作正常,但是当它放入 PHP 时它失败了。

PHP:

if (isset($_POST['create'])){

    //Insert booking to the database
    $InsertQuery = DB::getInstance()->query("INSERT INTO booking (`StartDate`, `EndDate`, `UserId`, `ItemId`) VALUES (
        '{$_POST['startdate']}', '{$_POST['enddate']}', {$_POST[currentuser]}, {$_POST[itemid]}");
    print_r($InsertQuery);
}

HTML:

<form action="MakeABooking1.php" method="post">
                    <tr>
                    <td><input type="text" name="itemid" value=" <?php echo $ItemId ?> "> </td>
                    <td><input type="text" name="currentuser" value=" <?php echo $currentUser ?> "> </td>
                    <td><input type="text" name="startdate" value=" <?php echo $bookFrom ?> "> </td>
                    <td><input type="text" name="enddate" value=" <?php echo $bookTo ?> "> </td>
                    <td><input type="submit" name="create" value="Book"></td>
                    </tr>
                    </form>

执行print_r($InsertQuery); 会显示以下内容:

DB 对象 ( [_pdo:DB:private] => PDO 对象 () [_query:DB:private] => PDOStatement 对象([queryString] => 插入预订(StartDateEndDateUserIdItemId)值('2015-03-26', ' 2015-03-31 ', 48 , 8 ) [_error:DB:private] => 1 [_results:DB:private] => 数组 () [_count:DB:private] => 0)

当从 print_r 复制查询时,它是有效的并创建一个预订。我哪里错了?

【问题讨论】:

  • 它处于准备模式。现在你必须尝试在 if 之后执行。
  • 错误检查?错误日志中有什么内容?
  • 不执行查询。 Mornin' Sam - @JayBlanchard
  • 嗯... OP 没有进一步的消息,Sam 继续前进 @JayBlanchard

标签: php mysql sql-insert


【解决方案1】:

好的,原来我的 SQL 查询中出现错误,我在值列表后遗漏了一个 )。不会说谎,感觉很傻!感谢您的所有建议。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-21
    • 1970-01-01
    • 2014-05-14
    • 1970-01-01
    • 2020-03-02
    • 1970-01-01
    • 1970-01-01
    • 2014-07-21
    相关资源
    最近更新 更多