2015-11-03 4 views
1

Код хорошо работает в моем localhost (xampp), и это часть редактирования для моей веб-страницы. Но когда я устанавливаю свой сервер, функция загрузки фотографий не работает (не загружает изображение на сервер). Любая помощь приветствуется. Ниже приведен мой код для загрузки фотографии.Загрузить фотографию на сервере

define ("MAX_SIZE","1000"); 
$errors=0; 
$image=$_FILES['image']['name']; 
if ($image == "") 
{ 
    $uploadmsg = '<br /><font color=red>'.ERR_BLANK_IMAGE_FIELD.'</font>'; 
    $errors=1; 
} 
if ($image) 
{ 
    $filename = stripslashes($_FILES['image']['name']); 
    $extension = base_getExtension($filename); 
    $extension = strtolower($extension); 
    if (($extension != "jpg") && ($extension != "jpeg") && ($extension != "png") && ($extension != "gif")) 
    { 
     $uploadmsg = '<br /><font color=red>'.ERR_UNKNOW_IMAGE_EXTENTION.'</font>'; 
     $errors=1; 
    } 
    else 
    { 
     $size=filesize($_FILES['image']['tmp_name']); 
     if ($size > MAX_SIZE*1024) 
     { 
      $uploadmsg = '<br /><font color=red>'.ERR_EXCEEDED_SIZE.'</font>'; 
      $errors=1; 
     } 
     $newname="images/eitem_".$itemPart.".".$extension; 
     if($photo != "images/eitem_item_default.png") 
     { 
      $delete = unlink($photo); 
     } 
     else 
     { 
      $delete=1; 
     } 
     $copied = copy($_FILES['image']['tmp_name'], $newname); 
     if (!$copied || !$delete) 
     {     
      $uploadmsg = '<br /><font color=red>'.ERR_IMAGE_UPLOAD_UNSUCCESS.'</font>'; 
      $errors=1; 
     } 
    } 
    if(isset($_POST['save']) && !$errors) 
    { 
     $uploadmsg = "<br /><font color=red>".MSG_IMAGE_UPLOAD_SUCCESS."</font>";     
     eitem_editItemPhoto($cid,$newname);     
     eitem_editItem($cid,$itemPart,$shortDesc,$longDesc,$categoryList,$brandList,$packDetails,$minOrder,$supplier,$price); 
    } 
} 
else 
{ 
    eitem_editItem($cid,$itemPart,$shortDesc,$longDesc,$categoryList,$brandList,$packDetails,$minOrder,$supplier,$price); 
} 

HTML

<div class="cell bottomBorder" style="width:170px; height:170px;vertical-align:middle; text-align:center;padding:5px;"> 
    <img src="../eitem/<?php echo $photo; ?>" id="imge_path" style="height:150px; width:120px"/> 
</div> 
<div class="cell bottomBorder" style="vertical-align:middle;"> 
    <input type="file" name="image" id="image"> 
    <div>(150px x 120px)</div> 
     <?php echo $uploadmsg; ?><br /> 
     <span class="note">Please use an image with .png,.jpg or .gif file format.</span> 
    </div> 
</div> 

EDIT
Я не мог получить значение $copied в этой строке $copied = copy($_FILES['image']['tmp_name'], $newname);, когда я пытаюсь эхо из значения в сервере. Но он работает в моем localhost

+0

Проверьте папку Права доступа к серверу –

+1

Здесь может быть много проблем. Путь к папке upload может быть недействительным, загрузка может быть отключена с помощью php.ini. Файл может быть большим, папка может быть недействительной и т. Д. Без каких-либо ошибок мы не сможем многое сделать. – AgeDeO

+0

Можете ли вы загрузить форму в описании? – ThinkTank

ответ

0

Вероятно, у вас нет perrimisions для forders в хосте, вам нужно предоставить разрешение на папку 755 на linux и создать, если папка не существует.

+0

Спасибо fico! Я довольно новичок в этом. Ваш ответ поможет мне решить эту проблему. – Sollo

Смежные вопросы