|
|
|
| PHP скрипт загружающий картинки на сервер нормально работает у меня на машине. а когда я загружаю его на сервер то он не копирует файл. Подскажите пожалуйста что делать. Никак не могу понять причину.
<?php
$res = $pasimage = 1;
if($_SERVER['REQUEST_METHOD']=='POST') {
if($_FILES['img']['tmp_name']){
$origine=$_FILES['img']['tmp_name'];
$pournom=date("U");
$ext=$_FILES['img']['type'];
switch($ext) {
case'image/gif' : $nom=$pournom.".gif";
break;
case'image/pjpeg' : $nom=$pournom.".jpg";
break;
case'application/octet-stream' : $pasimage="oui";
break;
default : $res="n";
}
if($res!= "n" && $pasimage!='oui') {
$destination="../img/".$nom;
copy($origine,$destination);
}
else{ if ($res=='n') {
$peradr = $_POST['id_st'];
echo "<table width=\"100%\" height=\"100%\" border=\"5\" cellpadding=\"10\" cellspacing=\"10\" bordercolor=\"#FFFFFF\" bgcolor=\"#FFFFFF\">";
echo "<tr><td align=\"center\">";
echo "ЭТО НЕ КАРТИНКА";
echo "<a href=\"modimg.php?id_st=".$peradr."\"><b> НАЗАД </b></a>";
echo "</td></tr></table>";
exit; }}
}
}
else { $nom= NULL; }
....
....
?>
|
Поясняю работу скрипта- загружаю с формуляра картинку
<form action="..." method="POST" enctype="multipart/form-data" name="ch_img" id="ch_img">
...
...
<input name="img" type="file" class="form" id="img" size="15">
|
скрипт проверяет картинка это или нет, потом если картинка с расширением gif или jpg то дает картинке новое имя и записывает ее в каталог на сервере одновременно записывая новое имя картинки в базу данных.
Имя записывает а картинку не копирует. хотя на локальной машине все работает. | |
|
|
|
|
|
|
|
для: Iskatel
(06.12.2004 в 18:52)
| | Причин может быть несколько, следует локализовать проблему. При помощи функции is_uploaded_file() проверьте загружаются ли файлы во временную директорию? Если файлы успешно достигают временной директории - проверьте имеет ли право ваш скрипт на запись в директорию назначания файлов? | |
|
|
|
|
|
|
|
для: cheops
(06.12.2004 в 19:22)
| | я добавил вот так
...
if(is_uploaded_file( $_FILES['img']['tmp_name'])){
$repons = 1; }
...
|
но эта функция что-то не заработала.
Но решение было найдено!
Благодаря вашему совету в ФТП менеджере проверил права на директорию - они были 705, когда поставил 777 все заработало.
Вот, а мучился целый день. :)
Спасибо. | |
|
|
|
|
|
|
|
для: Iskatel
(06.12.2004 в 19:54)
| | Нет имя следует подставлять оригинальное
if(is_uploaded_file( $_FILES['img']['name'])){
$repons = 1; }
|
Права доступа посмотреть, а так же проконтролировать позволяет практически любой FTP-менеджер
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=839
|
Подробнее о правах доступа можно почитать по ссылке
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=158
|
| |
|
|
|