У меня та же проблема, только я понял в чем дело, но не знаю как правильно поступить.Файл не успевает сохраняться на сервере.
Код такой:
if ($_FILES['attach1']['name'] != '')
{
$uploadfile1 = $uploaddir.basename($_FILES['attach1']['name']);
if (!move_uploaded_file($_FILES['attach1']['tmp_name'], $uploadfile1))
{
$errors .= 'Не удалось загрузить файл 1.<br/>';
$uppload1 = 'error';
}
else
{
$attach1_content = implode('', file ($uploadfile1));
//$attach1_content = file_get_contents($uploadfile1);
$mime1 = $_FILES['attach1']['type'];
}
}
т.е. когда забираешь текст с файла, он еще на диск не записался. Если файл маленький - все ок. Если файл большой - приходит либо обрезанный, либо 0 длины.
Как сделать правильно?
Желательно избежать функции sleep.