2016-04-28 7 views
0

新しいウェブサイトの登録フォームを作成しています。私のフォームの画像アップロード部分では、何の理由もなく画像がアップロードされているようではありません。私は何度も何度も何度も見たことがあります。$_FILES['dp']['error']は2に設定されています。2のエラーコードを与える画像アップロードフォーム。なぜですか?

アップロードしようとしているファイルは123 KBで、それでもエラー2が表示され続けてアップロードされません。どうして?

マイHTML:

<form enctype="multipart/form-data" class="form-signin" role="form" method="post" action="addit.php"> 
<h2 class="form-signin-heading" align="center">Sign Up</h2> 
<input value="" name="dp" type="file" class="form-control"> 
<button class="btn btn-lg btn-primary btn-block" type="submit">Sign up</button> 

はPHP:

$target_dir = "img/"; 

$target_file = $target_dir . basename($_FILES["dp"]["name"]); 
echo $target_file; 
echo $_FILES["dp"]["tmp_name"]; 
$uploadOk = 1; 
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION); 
// Check if image file is a actual image or fake image 
// Check if file already exists 
if (file_exists($target_file)) { 
echo "Sorry, file already exists."; 
$uploadOk = 0; 
} 
// Check file size 
// Allow certain file formats 
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg" 
&& $imageFileType != "gif") { 
    echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed."; 
$uploadOk = 0; 
} 
// Check if $uploadOk is set to 0 by an error 
if ($uploadOk == 0) { 
echo "Sorry, your file was not uploaded."; 
// if everything is ok, try to upload file 
} else { 
if (move_uploaded_file($_FILES["dp"]["tmp_name"], $target_file)) { 
    echo "The file ". basename($_FILES["dp"]["name"]). " has been uploaded."; 
} else { 
    echo $_FILES['dp']['error']; 
} 
} 

php.iniの設定:

file_uploads = On 

; Temporary directory for HTTP uploaded files (will use system default if not 
; specified). 
; http://php.net/upload-tmp-dir 
upload_tmp_dir = "d:/wamp/tmp" 

; Maximum allowed size for uploaded files. 
; http://php.net/upload-max-filesize 
upload_max_filesize = 64M 

; Maximum number of files that can be uploaded via a single request 
max_file_uploads = 20 

答えて

0

参照用のコードを使用し

$imgname = basename($_FILES["fileToUpload"]["name"]); 
$target_dir = "../../images/"; 
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]); 
$uploadOk = 1; 
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION); 
// Check if image file is a actual image or fake image 
if(isset($_POST["submit"])) { 
    $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]); 
    if($check !== false) { 
     echo "</br>File is an image - " . $check["mime"] . "."; 
     $uploadOk = 1; 
    } else { 
     echo "</br>File is not an image."; 
     $uploadOk = 0; 
    } 
} 
// Check if file already exists 
if (file_exists($target_file)) { 
    echo "</br>Sorry, file already exists."; 
    $uploadOk = 0; 
} 
// Check file size 
if ($_FILES["fileToUpload"]["size"] > 500000) { 
    echo "</br>Sorry, your file is too large."; 
    $uploadOk = 0; 
} 
// Allow certain file formats 
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg" 
&& $imageFileType != "gif") { 
    echo "</br>Sorry, only JPG, JPEG, PNG & GIF files are allowed."; 
    $uploadOk = 0; 
} 
// Check if $uploadOk is set to 0 by an error 
if ($uploadOk == 0) { 
    echo "</br>Sorry, your file was not uploaded."; 
// if everything is ok, try to upload file 
} else { 
    if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) { 
     echo "</br>The file ". basename($_FILES["fileToUpload"]["name"]). " has been uploaded."; 
    } else { 
     echo "</br>Sorry, there was an error uploading your file."; 
    } 
} 
+0

あなたのコードとそのパス以外の私の違いは何ですか? – LalaByte

+0

フォームにフォームを送信する方法 –

関連する問題