私は奇妙な問題があります。 File_existまたはis_fileでファイルチェックを実行すると、ファイルの半分しかチェックされません。スクリプトが行うのはcsvファイルを処理し、そのファイルがサーバー上に存在する場合のみデータをテーブルに挿入することです。ファイルのチェックを外すとすべての処理が正常に行われます。私はすべてのファイルが何らかの理由で途中で停止するサーバー上に存在することを確認するために二重チェックをしました。while文がfile_exists/is_fileで完全に処理されない
$column_headers = array();
$row_count = 0;
if (mysql_result(
mysql_query(
"SELECT count(*) FROM load_test WHERE batch_id='".$batchid."'"
), 0
) > 0) {
die("Error batch already present");
}
while (($data = fgetcsv($handle, 0, ",")) !== FALSE) {
if ($row_count==0){
$column_headers = $data;
} else {
$dirchk1 = "/temp/files/" . $batchid . "/" .$data[0] . ".wav";
$dirchk2 = "/files/" . $batchid . "/" . $data[1] . ".wav";
if (file_exists($dirchk1)) {
$importword="INSERT into load_test SET
word = '".$data[2]."',
batch_id = UCASE('".$batchid."'),
accent = '".$data[15]."'
";
mysql_query($importword);
$word_id = mysql_insert_id();
echo $word_id . "\n";
}
}
++$row_count;
}
エラー/警告/通知表示を有効にして、PHPが何か有益な情報を伝えるかどうかを確認します。 – Matthew
エラーが生じますか? ( 'file_exists($ file)&& is_readable($ file)'を試してください)? – prodigitalson
どこが止まるのですか?どの行が –