我在我的php框架(飞行)中使用PDO,我有一个荒谬的问题。 当我在mysql中插入1行时,我看到插入了3行。
Flight::db()->query("INSERT INTO `menu_item`(`order`, `menu_cat_id`) VALUES (22,1)");
这是我的全部代码:
<?php
require 'flight/Flight.php';
Flight::register('db', 'PDO', array('mysql:host=localhost;port=3306;dbname=deliman', 'root', ''), function($db) {
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES 'utf8'");
$db->exec("SET NAMES 'utf8';");
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, 0);
});
Flight::route('/menu/item/new', function(){
//$conn = Flight::db();
$data = Flight::db()->query("INSERT INTO `menu_item`(`order`, `menu_cat_id`) VALUES (22,1)");
//SET @maxOrder := (SELECT `order` FROM `menu_item` WHERE `menu_cat_id` = 1 ORDER BY `order` DESC LIMIT 1) +1 ;
//SELECT LAST_INSERT_ID() AS id;
echo 'a';
});
Flight::start();
?>
答案 0 :(得分:5)
我在这篇文章中找到了答案。 pdo insert two rows when I wanna insert only one
因此,当我在浏览器中测试时,它会发送多个请求,每次我的代码都在运行。就是这样。