0
if (isset($_SESSION['logged_in'])) {
if (isset($_POST['title'], $_POST['content'])) {
    $title = $_POST['title'];
    $content = $_POST['content'];

    if (empty($title) or empty($content)) {
        $error = 'All fields are required!';
    } else {
        $query = $pdo->prepare("INSERT INTO articles (atricle_title, atricle_text, atricle_timestamp) VALUES (?, ?, ?)")

        $query->bindValue(1, $title); //error is here
        $query->bindValue(2, $content);
        $query->bindValue(3, time());

        $query->execute();

        header(Location: index.php);
}

有人知道这里有什么问题吗?代码本身不止于此,但这只是相关的部分。

谢谢。

4

4 回答 4

1
$query = $pdo->prepare("INSERT INTO articles (atricle_title, atricle_text, atricle_timestamp) VALUES (?, ?, ?)")

在这一行中,;缺少

这行也是错误的:

header(Location: index.php);

它必须看起来像这样:

header("location: index.php");
于 2013-09-15T17:52:57.650 回答
1

错过了;在下一行的末尾,这就是为什么当您尝试绑定值时它在下一行显示错误的原因。$query = $pdo->prepare("插入文章 (atricle_title, atricle_text, atricle_timestamp) VALUES (?, ?, ?)");

还有标题(位置:index.php);需要将参数作为字符串放入头函数中。

请尝试一下,我知道是否有任何问题。

于 2013-09-15T18:04:04.907 回答
0

发生错误是因为 PHP 假定包含查询的行尚未结束,然后下一个字符违反了语法规则。;在查询行中添加分号。

$query = $pdo->prepare("INSERT INTO articles (atricle_title, atricle_text, atricle_timestamp) VALUES (?, ?, ?)");
于 2013-09-15T17:52:00.953 回答
0

;PDO声明和quotes.header()

<?php

if (isset($_SESSION['logged_in'])) {
if (isset($_POST['title'], $_POST['content'])) {
    $title = $_POST['title'];
    $content = $_POST['content'];

    if (empty($title) or empty($content)) {
        $error = 'All fields are required!';
    } else {
        $query = $pdo->prepare("INSERT INTO articles (atricle_title, atricle_text, atricle_timestamp) VALUES (?, ?, ?)");

        $query->bindValue(1, $title); //error is here
        $query->bindValue(2, $content);
        $query->bindValue(3, time());

        $query->execute();

        header("Location: index.php");
}
于 2013-09-15T17:53:01.140 回答