2012-04-16 21 views
0

私はこの作業を得ることが非常に困難であり、まだ実用的なシナリオを考え出していません。基本的に、これはイメージをアップロードするはずのシンプルで使いやすい管理者です。しかし、私はアップロードを動作させることができません。ファイル名はデータベースに追加されていますが、画像はアップロードされません。正しい方向に私を指して探していると事前に感謝のためPHP:move_uploaded_file問題。ここで何が間違っていますか?

function editMain($data){ 
    array_pop($data); 
    $where = "main_id = {$data['main_id']}"; 
    unset($data['main_id']); 
//upload image 
if ($_FILES['main_picture']['size'] > 1){ //if image deal with it 
    $data['main_picture'] = '/images/'.$_FILES['main_picture']['name']; 
    $uploadedfile = $_FILES['main_picture']['tmp_name']; 
    if (move_uploaded_file($uploadedfile, SITE_ROOT.$data['main_picture'])) 
    echo "successfully uploaded {$data['main_picture']}<br />"; 
    else 
    echo "failed to upload {$data['main_picture']}<br />"; 
} 

ありがとう:あるとして、ここでは

は、コードです!

+0

'SITE_ROOT'は何を意味するのでしょうか? – hjpotter92

+1

これらのフォルダのパスとパーミッションを確認してください(それが役立つかどうかを確認するために777を試してみましょうが、後でセキュリティを変更してください) - つまりis_writable(SITE_ROOT。$ data ['main_picture']) ' – scibuff

+0

' (例:http:// www。example。com /)。 – NotJay

答えて

2

SITE_ROOTはローカルディレクトリ、つまり「C:\...」または「/home/...」である必要があります。これはURL構造にすることはできません。ファイルをアップロードする場所のローカルディレクトリに変更し、権限を確認してください。

私はそのように使用
+0

ありがとうございました! – NotJay

0

if(!is_dir($dir = $_SERVER['DOCUMENT_ROOT']."/fies_path"))mkdir($dir); 
    move_uploaded_file($_FILES['file']['tmp_name'],$src = $dir."/$file_name.ext"); 
関連する問題