Php 为什么我的sql语句在数据库中插入两行?

Php 为什么我的sql语句在数据库中插入两行?,php,mysql,sql,database,Php,Mysql,Sql,Database,我有以下代码,知道它不在循环中。虽然我要求它在另一个文件中,但它仍然不在循环中。 我不知道为什么在执行这些行之后,我会在数据库中得到两行 $stmt400 = $db->prepare("insert into history (last_scan,warning_files,new_files,username) values(?,?,?,?)"); $stmt400->execute(array($date,$sum,$row100[0],$user)); 如果在另一个文件中

我有以下代码,知道它不在循环中。虽然我要求它在另一个文件中,但它仍然不在循环中。 我不知道为什么在执行这些行之后,我会在数据库中得到两行

 $stmt400 = $db->prepare("insert into history (last_scan,warning_files,new_files,username) values(?,?,?,?)");
$stmt400->execute(array($date,$sum,$row100[0],$user));

如果在另一个文件中需要您的代码,那么它将执行并导致两次插入。 我建议您将代码放入所需文件中的函数中。
这样它就不会自动执行,只有在您调用该函数时才会被调用。

因为您需要两次该文件,您可以使用
require\u once
来防止它加载和执行任何内容两次。

我认为这两条语句本身不会导致插入两行。删除数据库中的两行,提交,然后再次运行代码以确认相同内容。此处信息不足。请向我们展示更真实的代码用法,看看为什么要执行两次。我不明白为什么一个文件中
必需的那两行会多次运行这两行,除非它在主文件中需要多次script@alkoofi写入代码也在所需的文件中。这使得运行twiceI的代码可以想象这是一个非英语母语人士的语言错误。这不是文件中唯一需要的代码。但它仍然不是一个循环或任何东西,将导致运行这些线路不止一次。另外,我试着不需要它,而是将它复制到原始文件中,仍然存在同样的问题