php PDO插入错误

标签 php mysql sql pdo

<分区>

大家好,我有一个小问题.. 我是 PDO 的新手,我想在我的网站上实现它,我有以下代码:

foreach($liga1 as $item) {
$data = $item->get_date('j M Y, g:i a');
$titlu = $item->get_title();
$link = $item->get_permalink();
$text = $item->get_description();
$cat = "Liga 1";

$dbhost     = "localhost";
$dbname     = "site";
$dbuser     = "root";
$dbpass     = "root";

// database connection
$conn = new PDO("mysql:host=$dbhost;dbname=$dbname",$dbuser,$dbpass);

// query
$sql = "INSERT INTO stiri ('id','data', 'continut', 'link', 'titlu', 'categorie' ) VALUES (:data, :text, :link, :titlu, :categorie)";
$q = $conn->prepare($sql);
$q->execute(array(':data', $data,
                ':continut', $text,
                ':link', $link,
                ':titlu', $titlu,
                ':categorie', $cat));
}

当我运行这段代码时,出现以下错误:

Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in C:\xampp\htdocs\ice\sql\sport2.php on line 50

如您所见,我想在数据库中插入我输入的特定类别,我在 mysql 表中也有“id”,但我不知道如何使用 PDO 插入它。 我也不想在这里使用类,因为我需要在 20 多个页面上放置相同的代码。

最佳答案

你错过了 :text 。您需要为其添加另一个参数。您将其命名为 contuit 并告诉 pdo 期待 :text

关于php PDO插入错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15148182/

相关文章:

php - 我们怎么称呼这个?

php - Laravel 多对多同步与附加列

php - 使用 PHPExcel 加载包含图像的 Excel 文件

javascript - 如何在javascript中将单引号添加到将在 Node JS中作为sql插入命令执行的字符串

php - 我怎样才能使这个 mysqli 查询在 PHP 中运行得更快?

mysql - 为什么 `MUL` 关键字出现在 `Key` mysql 命令的 `show columns from Employee` 列下?

php - 在继续之前显示一条 JavaScript 消息

mysql - SQL - 在插入之前查找每个值的 ID

php - Mysql SELECT COUNT(*) 或 SELECT 1? PDO

sql - 如何在 Postgres 中保存最后一个序列值?