私のフォームは、PHPMailer で作成したメールに追加するファイルをアップロードします。
残念ながら、メールは送信されていません。おそらく、送信の実行が早すぎたためだと思います。そこで私がやりたかったのは、小さなループを追加して、ファイルがアップロードされるまで実行を効果的に一時停止することでした。
while (!move_uploaded_file($_FILES['upload'][$first_name.' CV'], $target_path))
{
sleep(1);
if (move_uploaded_file($_FILES['upload'][$first_name.' CV'], $target_path))
{
echo "The file ". basename( $_FILES['upload'][$first_name.' CV'])." has been uploaded";
}
else
{
echo "There was an error uploading the file, please try again!";
}
}
これは私が思いついたものですが、ここで何をしているのか正確にはわかりません。
次のことを明確にしてください。
!move_uploaded_file...
ループの先頭でファイルをアップロードする宣言ですか?- はいの場合、ファイルはループの繰り返しごとにアップロードされていますか?
move_uploaded_file...
ループ内のステートメントでの宣言if
もファイルをアップロードしていますか、それともファイルがアップロードされたことを確認しているだけですか?- この種のことを処理する最善の方法は何ですか? きっとこれじゃない…
前もって感謝します!