Проблема загрузки Jpeg на сервер
Вот текст скрипта:
$uploaddir="../img/system/";
if(!empty($_FILES['picfile']['name']))
{
if(is_uploaded_file($_FILES['picfile']['tmp_name']))
{
$picfile=$_FILES['picfile']['tmp_name'];
$query="SELECT * FROM init WHERE name='last_file_name'";
//Файлы переименовываются.... из БД берем имя последнего файла
$result=mysql_query($query);
$row=mysql_fetch_array($result);
$upload_file_name=$row['value'];
$upload_file_name++;
$query="UPDATE init SET value=$upload_file_name WHERE name='last_file_name'";
mysql_query($query);
$ext=substr($_FILES['picfile']['name'],strlen($_FILES['picfile']['name'])-3,4);
$upload_file_name.='.';
$upload_file_name.=$ext;
}
if (copy($_FILES['picfile']['tmp_name'], $uploaddir.$upload_file_name)) $upload_status=1;
else $upload_status=0;
}
Повторюсь. Файлы закачиваются на сервак...но их содержание меняется
apache конечно 2.0?
С проблемой я разобрался. Хочу поделиться решением с народом - вдруг кому поможет. Итак. Apache там стоит версии 1.3.31. И в его настройках по умолчанию стоит перекодировка страниц в win-1251. Из-за этого любые бинарные файлы (то есть картинки, мр3 и т.д.) он естественно тоже перекодирует, что по сути разрушает файл. Не спрашивайте как я до этого дошел (ровно 2 ночи и 1 день ломал свою бедную голову - остальная работа в это время стояла) - просто было какое-то секундное озарение. Решение данной проблемы найдено было тут же. Пихаем в файл .htaccess такую вещь:
<IfModule mod_charset.c>
CharsetRecodeMultipartForms off
</IfModule>
После этого проблемы как не бывало. Вот так порой очень простые вещи заставляют бедных программеров ломать голову. Удачи.:)
Блин, а у поисковика спросить "Почему бьются файлы при аплоаде" не пробовал? А ты попробуй :D
Поздно конечно, но тем не менее.