2016-09-16 14 views
0

私はこれについて簡単なエラーを作りました。ファイルがPHPページに渡されていません(「アップロードされていません:ファイルエラーです。もう一度やり直してください」というエラーがPHPページから返されました)。単一ファイルのアップロードjquery php

コードはJQUERYなしで正常に動作しますPHPは問題ではありません。

フィールド名/ id &を確認しましたが、これは問題ありません。私は、ボタンの価値が渡されているかどうかを調べるためにテストを試みました。それは、おそらくJQUERYだったと結論づけられましたが、私は困惑しました。

私は類似の投稿が(私はそれらを読んだことを)提出されている知っているが、私は絶望的です!

ありがとうございます。ここで

はHTMLです:

<form action="upload.php" name="formname" ENCTYPE="multipart/form-data" id="formid"> 
     <fieldset> 
      <legend>File info</legend> 
      <p> 
       <label for="file1">Files<span class="red"> *</span></label> 
       <input name="file1" type="file" /> 
      </p> 
     </fieldset> 
     <p><label>&nbsp;</label><input type="button" id="submit" value="Add" /></p> 
    </form> 
    <div id="output"></div> 

<script> 
$(function(){ 
    $('#submit').on('click', function(){ 
     var fd = new FormData($("#formid")); 
     $.ajax({ 
      url: 'upload.php', 
      type: 'POST', 
      data: fd, 
      success:function(data){ 
       $('#output').html(data); 
      }, 
      cache: false, 
      contentType: false, 
      processData: false 
     }); 
    }); 
}); 
</script> 

とPHPのAjax機能を追加すること

<?php 
    $strName = 'JoeBloggs'; 
    $intId = 1045; 
    $missing = ''; 
    date_default_timezone_set("Europe/London"); 
    error_reporting(E_ALL); 
    include('class.upload.php'); 
    // where to put the images? 
    $dir_dest = '../'.$intId.'/'; 
    $xcount = 0; 
    if (!file_exists($dir_dest)) { mkdir($dir_dest, 0777, true);} 
    # upload 1400px 
    $handle = new upload($_FILES['file1']); 
    if ($handle->uploaded) { 
     $y = $handle->image_src_y; 
     $height = $y/2; 
     $handle->image_resize   = true; 
     $handle->image_ratio_crop  = true; 
     $handle->image_x    = 700; 
     $handle->image_y    = 260; 
     $handle->image_convert   = jpg; 
     $handle->Process($dir_dest); 
     if ($handle->processed) { 
      // everything was fine ! 
      $strFilename1 = $handle->file_dst_name; 
      rename($dir_dest . $strFilename1, $dir_dest . $strName . '.jpg'); 
      $missing .= 'File uploaded'; 
     } else { 
      $missing .= $missing. 'Not processed:' . $handle->error . '<br />'; 
     } 
    } else { 
     $missing .= 'Not uploaded:' . $handle->error . '<br />'; 
    } 

    echo $missing; 
    //header('Location: ../index.php?missing='.$missing); 
?> 
<img src="<?= $dir_dest . $strName?>.jpg" /> 
+0

[jQuery AJAX file upload PHP]の複製があります(http://stackoverflow.com/questions/23980733/jquery-ajax-file-upload-php) –

答えて

1

<script> 
$(function(){ 
    $('#submit').on('click', function(){ 
    var form = $('#formid')[0]; 
    var formData = new FormData(form); 
    $.ajax({ 
     url: 'upload.php', 
     type: 'POST', 
     data: formData, 
     success:function(data){ 
      $('#output').html(data); 
     }, 
     cache: false, 
     contentType: false, 
     processData: false 
    }); 
}); 
}); 
</script> 
+0

私のコードを見ていただきありがとうございます - 成功! – GeneralTomfoolery

+0

あなたを助けてうれしい.. ..! – kc1994

0

試してみてください。これはあなたを助けることになる試してみてください

contentType: multipart/form-data 
関連する問題