Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php PDO在MySQL中插入重复数据_Php_Mysql_Pdo - Fatal编程技术网

Php PDO在MySQL中插入重复数据

Php PDO在MySQL中插入重复数据,php,mysql,pdo,Php,Mysql,Pdo,我有下面的代码,每当调用函数时,它都会插入数据两次 调用类/函数的php: $add_amenity = new listing; echo $add_amenity->add_amenity($_POST['name']); public function add_amenity($a) { try { $dbh = new PDO("mysql:host=" . db_host . ";dbname=" . db_name . "",d

我有下面的代码,每当调用函数时,它都会插入数据两次

调用类/函数的php:

$add_amenity = new listing;
echo $add_amenity->add_amenity($_POST['name']);
    public function add_amenity($a)
{
        try {
            $dbh = new PDO("mysql:host=" . db_host . ";dbname=" . db_name . "",db_user,db_password);
            $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 

            $q = $dbh->prepare("INSERT INTO amenitylist (id,name,icon,isactive) VALUES ('',:a,'','1')");
            $q->bindParam(':a', $a);
            $q->execute();
            $this->_results = $dbh->lastInsertId();
        } catch(PDOException $e) {
            $this->_results = "ERROR: " . $e->getMessage();
        }
}
以下是函数:

    public function add_amenity($a)
{
        try {
            $dbh = new PDO("mysql:host=" . db_host . ";dbname=" . db_name . "",db_user,db_password);
            $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 

            $q = $dbh->prepare("INSERT INTO amenitylist (id,name,icon,isactive) VALUES ('',:a,'','1')");
            $q->bindParam(':a', $a);
            $q->execute();
            $this->_results = $dbh->lastInsertId();
        } catch(PDOException $e) {
            $this->_results = "ERROR: " . $e->getMessage();
        }
}

当调用实体时,向其传递两个参数,但函数def有一个参数。可能会叫两次吗?也许很抱歉,是的。当我把它抄过来时,我正在找零钱。我用的是有效的1参数?或者您已经尝试过alreadyAlready尝试过(仍然不起作用)。我更新了代码以显示准确的信息。抱歉搞混了。没有什么可以怀疑这个代码是罪魁祸首。你一定是无意中打了两次电话,也许你的页面在不知不觉中刷新了两次。。。?