【发布时间】:2019-06-19 17:00:42
【问题描述】:
我正在编写如下所示的 php 代码,该代码列出了 $src_dir 中存在的所有 mp4 文件。
$src_dir = ('\\\ABCD-ST-001\Audio_Test\podcast\incoming_folder');
$mp4_files = preg_grep('~\.(mp4)$~', scandir($src_dir));
print_r(array_values($mp4_files)); // LineA
这是从Line#A获得的O/P:
Array ( [0] => 36031P.mp4 [1] => hello.mp4 )
现在,我在我的 php 代码中使用了以下脚本,以便将这些 mp4 文件插入到Podcast_Export 表中。
foreach ($mp4_files as $value) {
$db->exec(SELECT COUNT(*) FROM Podcast_Export WHERE House# = '".$value."' AND status = 'GO');
$db->exec("INSERT INTO Podcast_Export ('House_number', 'Status') VALUES ('".$value."', 'Go')"); // Line B
}
以上脚本在Podcast_Export表内添加如下数据:
36031.mp4 Go
hello.mp4 Go
问题陈述:
我现在面临的问题是当我刷新页面时,LineB 处的脚本再次运行,并且 $src_dir 中的 mp4 文件再次添加到 Podcast_Export 表中,如图所示下面:
36031.mp4 Go
hello.mp4 Go
36031.mp4 Go
hello.mp4 Go
它应该以这样的方式工作,一旦新文件出现在 $src_dir 中,那么它应该添加到 Podcast_Export 表中。让我们假设新文件是 hxz210.mp4 那么Podcast_Export table 里面的内容
应该是:
36031.mp4 Go
hello.mp4 Go
hxz210.mp4 Go
【问题讨论】:
-
修改
House#使其成为唯一值...或更改您的脚本以使其不再运行。 -
或者查看数据库中的
House_Number是否已经存在 -
@user3783243 House# 不是正确的列名,因此我已将其修改为“House_number”。刷新时,脚本应该只在新的 mp4 文件出现时运行。
-
@flash:我再次建议添加一个查询,用于检查记录是否存在link
-
@devpro 我已在问题中添加。让我知道它是否看起来不错。