基本的に、フォルダー内の mp3 ファイルを調べてから、存在しないinsert
場合は mysql データベースを調べます。number
問題はINSERT
、(mysql) が複数回挿入されていますがmember_id
、同じnumber
. これは起こるべきではありません。
4 人のスタッフがこのスクリプトを実行しています。これの原因と修正方法は?
if ($handle = opendir($audioPath)) {
while (false !== ($entry = readdir($handle))) {
$file = pathinfo($entry);
if ($entry != "." && $entry != ".." && !is_dir($audioPath . "/" . $entry) && $file['extension'] == 'mp3') {
$number = $file['filename'];
$SQL = "SELECT mobile, status, member_id, count(*) as Total from result WHERE number = :number";
$query = $this->db->prepare($SQL);
$query->bindValue(":number", $number);
$query->execute();
$row = $query->fetch(PDO::FETCH_ASSOC);
// Check if number is exist in the table
if ($row['Total'] == 0) {
$SQL = "INSERT INTO result (number, status, status_date, member_id) VALUES ('$number', 'pending', now(), '$memberId')";
$queryInsert = $this->db->prepare($SQL);
$queryInsert->execute();
break;
}
}
}
}
break
メディアプレーヤープラグインを介してmp3を再生した後。