【问题标题】:PHP PDO INSERT query running twicePHP PDO INSERT 查询运行两次
【发布时间】:2014-03-19 17:14:45
【问题描述】:

我已经使用 PHP PDO 获得了这段代码,并且我有一个运行两次的 INSERT 查询。此代码应将值“Hello World”插入数据库。但是,我的代码将值两次插入到数据库中。

我该如何解决这个问题?我偶然发现了其他人也有同样的问题,但是他们有循环问题,或者他们使用了使事情变得混乱的爆炸功能。我没有这些,只有一个连接块和一个插入查询,但它却做了一件奇怪的事情。

代码:

// DB connect configuration
$user = 'user';
$pass = 'password';

// Database connection
$dsn = "mysql:host=localhost;dbname=pdotest;charset=utf8";
$opt = array(
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
    PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
);

$conn = new PDO($dsn, $user, $pass, $opt);

// Data to insert
$data = 'Test and test and test';

// Insert data into database
$sql = "INSERT INTO tabletwo (rowTwo) VALUES (?)";
$q = $conn->prepare($sql);
$q->execute(array($data));

【问题讨论】:

  • PDO 不会自行执行此操作。某些东西正在运行您的脚本两次,您需要弄清楚为什么会发生这种情况。
  • 这是您在此页面上拥有的唯一代码吗?
  • 为什么是新问题?只需编辑this 一个。
  • 是的,阿比克,这就是一切。只有一些 HTML,就是这样。我已按如下方式包含此文件: include(DIR . '/../scrapll_m_nonstatic/init/db/connect.php');
  • 根据我的经验,这些问题往往发生在椅子和显示器之间。搜索您的代码以查找导致查询运行两次的任何内容,检查您的包含,一切!

标签: php mysql sql pdo


【解决方案1】:

发生这种情况是因为一些用于页面转换的 Javascript 代码。代码可以在这里找到:http://www.fasw.ws/faswwp/non-jquery-page-transitions-lightweight/。我不知道如何解决这个问题。

【讨论】:

    猜你喜欢
    • 2017-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多