2016-08-21 1 views
0

イムは、画像が文句を言わないカントーをアップロードするフォルダに画像をアップロードしようとしてftpに画像を保存し、私は、次のようないくつかのコードを試みた:PHPの画像アップロードは文句を言わない

tutorialspoint.com/php/php_file_uploading.htmを または www.w3schools.com/php/php_file_upload.asp 写真をアップロードすることはありません。また、フォルダとファイル自体に対して777権限を付与しました。誰もそれを引き起こす原因を知っていますか?

私のコードは次のようになります。

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="UTF-8"> 
<title>Fds upload</title> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> 
</head> 
<body> 
    <form method="post"> 
     Enter username: 
     <input type="username" placeholder="Enter username"> 
     Enter password: 
     <input type="password" placeholder="Enter password"> 
     Enter design name: 
     <input type="text" name="design_name" placeholder="Enter name" class="form-control"> 
     Select gender: 
     <select name="fds_gender" id="fds_gender"> 
      <option value="stud">Male</option> 
      <option value="babe">Female</option> 
     </select> 
     Select category: 
     <select name="categories" id="fds_categories"> 
      <option value="20080687">Hairs: 25 Zcard</option> 
      <option value="20080847">Shirts: 1000 Zbucks</option> 
      <option value="20080836">Shirts: 25 Zcard</option> 
      <option value="20080934">Jackets: 25 Zcard</option> 
      <option value="20080934">Jackets: 25 Zcard</option> 
      <option value="20080849">Bottoms: 25 Zcard</option> 
      <option value="20080988">Shoes: 800 Zbucks</option> 
      <option value="20080992">Shoes: 25 Zcard</option> 
      <option value="20081034">Gloves: 25 Zcard</option> 
      <option value="20081014">Belts: 500 Zbucks</option> 
      <option value="20081015">Belts: 25 Zcard</option> 
      <option value="20081004">Scarves: 10 Zcard</option> 
      <option value="20080941">Hats: 10 Zcard</option> 
      <option value="20080834">Bags: 20 Zcard</option> 
      <option value="20081049">Misc: 25 Zcard</option> 
      <option value="20081020">Masks: 10 Zcard</option> 
     </select> 
     Select image to upload: 
     <input type="file" name="fileToUpload" id="fileToUpload"> 
     <button type="submit">Upload design</button> 
    </form> 

    <?php 
     if(!empty($_POST)){ 
      // Image upload code using the following foldername: uploads 
     } 
    ?> 

    <script type="text/javascript"> 
     $(document).ready(function(){ 
      $("#fds_gender").change(function() { 
       var gender = $(this).val(); 
       $.ajax({ 
        type: "POST", 
        data: { 
         "gender" : gender 
        }, 
        url: "ajax/fds_categories_ajax.php", 
        success: function(data){ 
         $("#fds_categories").empty(); 
         $.each($.parseJSON(data), function(index, element) { 
          if(gender == 'stud'){ 
           if(element.p == 0){ 
            $("#fds_categories").append(
             $('<option></option>').val(element.id).html(element.name + ": " + element.pb + ' Zbucks') 
            ); 
           }else{ 
            $("#fds_categories").append(
             $('<option></option>').val(element.id).html(element.name + ": " + element.p + ' Zcard') 
            ); 
           } 
          }else{ 
           if(element.p == 0){ 
            $("#fds_categories").append(
             $('<option></option>').val(element.id).html(element.name + ": " + element.pb + ' Zbucks') 
            ); 
           }else{ 
            $("#fds_categories").append(
             $('<option></option>').val(element.id).html(element.name + ": " + element.p + ' Zcard') 
            ); 
           } 
          } 
         }); 
        } 
       }); 
      }); 
     }); 
    </script> 
</body> 
</html> 
+0

どこかのアップロード自体を処理するコードはありますか? – RamRaider

+0

私はPHPのものを投稿したURLからのコードをテスト – pr0b

答えて

2

をフォームが正しくなどのパラメータていることを確認すること:にenctype = "multipart/form-データ"

0

としては、必要に@coreyによって指摘ファイルのアップロードを処理する場合は、フォームのenctypeプロパティをmultipart/form-dataに設定します。多くの場合、大量のファイルが処理/失敗に長い時間を要しないようにファイルサイズを制限するために隠し入力を追加することが可能であり、実際には望ましいですが、それは必須ではありません。サーバーサイドでは、それはあなたがチェックする必要があり$_FILES配列ではなく$_POST

<form method="post" enctype='multipart/form-data'> 
    Enter username: 
    <input type="username" placeholder="Enter username"> 
    Enter password: 
    <input type="password" placeholder="Enter password"> 
    Enter design name: 
    <input type="text" name="design_name" placeholder="Enter name" class="form-control"> 
    Select gender: 
    <select name="fds_gender" id="fds_gender"> 
     <option value="stud">Male</option> 
     <option value="babe">Female</option> 
    </select> 
    Select category: 
    <select name="categories" id="fds_categories"> 
     <option value="20080687">Hairs: 25 Zcard</option> 
     <option value="20080847">Shirts: 1000 Zbucks</option> 
     <option value="20080836">Shirts: 25 Zcard</option> 
     <option value="20080934">Jackets: 25 Zcard</option> 
     <option value="20080934">Jackets: 25 Zcard</option> 
     <option value="20080849">Bottoms: 25 Zcard</option> 
     <option value="20080988">Shoes: 800 Zbucks</option> 
     <option value="20080992">Shoes: 25 Zcard</option> 
     <option value="20081034">Gloves: 25 Zcard</option> 
     <option value="20081014">Belts: 500 Zbucks</option> 
     <option value="20081015">Belts: 25 Zcard</option> 
     <option value="20081004">Scarves: 10 Zcard</option> 
     <option value="20080941">Hats: 10 Zcard</option> 
     <option value="20080834">Bags: 20 Zcard</option> 
     <option value="20081049">Misc: 25 Zcard</option> 
     <option value="20081020">Masks: 10 Zcard</option> 
    </select> 
    Select image to upload: 
    <input type="hidden" name="MAX_FILE_SIZE" value="2097152" /> 
    <input type="file" name="fileToUpload" id="fileToUpload"> 
    <button type="submit">Upload design</button> 
</form> 

<?php 

    $field='fileToUpload'; 
    $dir = 'uploads'; 

    if(isset($_FILES[ $field ])){ 

     $name = $_FILES[ $field ]['name']; 
     $size = $_FILES[ $field ]['size']; 
     $tmp = $_FILES[ $field ]['tmp_name']; 
     $type = $_FILES[ $field ]['type']; 
     $ext = strtolower(pathinfo($name, PATHINFO_EXTENSION)); 
     $target = realpath($_SERVER['DOCUMENT_ROOT'] . '/' . $dir); 

     if($target) $result = move_uploaded_file($tmp, $target . $name); 
     echo $result ? 'Success' : 'Failed'; 
    } 
?> 
関連する問題