【问题标题】:I get an error message, and I do not know what it is [duplicate]我收到一条错误消息,我不知道它是什么 [重复]
【发布时间】:2017-06-17 12:44:22
【问题描述】:

我遇到了这个错误,有人可以帮助我吗? :)

警告:PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in .... on line 98

PDO:

function createNewNews($autor, $titel, $news) {
    $stmt = self::$_db->prepare('INSERT INTO eintraege (Autor, Headline, Datum, Eintrag) VALUES (:autor, :Headline, :datum, :news)');   
    $stmt->bindParam(":autor", $autor);
    $stmt->bindParam(":datum", $datum);
    $stmt->bindParam(":news", $titel);
    $stmt->bindParam(":titel", $news);

    if($stmt->execute()) {
        return true;    
    } else {
        return false;   
    }

}

PHP:

if(isset($_POST['submit'])) {
    $autor = $_POST['autor'];
    $datum = $_POST['datum'];
    $news = $_POST['titel'];
    $titel = $_POST['news'];

    if($db->createNewNews($autor, $titel, $news)) {
        echo "YES!";    
    } else {
        echo "No!"; 
    }
}

【问题讨论】:

  • $datum 不存在于函数范围内?将其作为参数传递!
  • 如果你使用bindValue呢?

标签: php mysqli pdo


【解决方案1】:

您在 createNewNews 函数中缺少参数 $datum。

【讨论】:

  • thaaaank 你我发现我的错误
【解决方案2】:

您还需要将$datum 作为参数传递

function createNewNews($autor, $datum,$titel, $news) {
    $stmt = self::$_db->prepare('INSERT INTO eintraege (Autor, Headline, Datum, Eintrag) VALUES (:autor, :Headline, :datum, :news)');   
    $stmt->bindParam(":autor", $autor);
    $stmt->bindParam(":datum", $datum);
    $stmt->bindParam(":news", $titel);
    $stmt->bindParam(":titel", $news);

    if($stmt->execute()) {
        return true;    
    } else {
        return false;   
    }

}

PHP:

if(isset($_POST['submit'])) {
    $autor = $_POST['autor'];
    $datum = $_POST['datum'];
    $news = $_POST['titel'];
    $titel = $_POST['news'];

    if($db->createNewNews($autor, $datum,$titel, $news)) {
        echo "YES!";    
    } else {
        echo "No!"; 
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-04
    • 1970-01-01
    • 2016-02-01
    • 2021-12-18
    • 2021-12-10
    • 2021-03-05
    • 1970-01-01
    相关资源
    最近更新 更多