首页 > 解决方案 > 将图像和文本归档 formdata ajax 发送到 php。php无法识别的图像

问题描述

我有文本类型的输入文本框和一个文件类型的输入文本框。我想在单击按钮时通过 ajax 将这些值发送到 php 文件。一切似乎都很好,但由于某种疯狂的原因,如果在 php 文件中没有识别出图像。请帮助,我没有想法。我的代码如下。

=========当按钮 id=Saved 被点击时的javascript代码====

 $("#saved").on('click',function(){
$("#itemform").submit(function(e){
    e.preventDefault();
 });
    var item_desc =document.getElementById("item_desc").value;
 var item_price_type =document.getElementById("item_price_type").value;
 var item_regular_price =document.getElementById("item_regular_price").value;
 var item_type =document.getElementById("item_type").value;
 var item_cat =document.getElementById("item_cat").value;
 var taxablee =document.getElementById("taxablee").value;
 var item_price_tax =document.getElementById("item_price_tax").value;
 var item_offer_price=document.getElementById("item_offer_price").value;
 var offer_start =document.getElementById("offer_start").value;
 var offer_end =document.getElementById("offer_end").value;
var file =document.getElementById('file').value;
var price_tax="";
var formdata = new FormData();
formdata.append('file',file);
formdata.append('item_desc',item_desc);
formdata.append('item_price_type',item_price_type);
formdata.append('item_regular_price',item_regular_price);
formdata.append('item_type',item_type);
formdata.append('item_cat',item_cat);
formdata.append('taxablee',taxablee);
formdata.append('price_tax',price_tax);
formdata.append('item_offer_price',item_offer_price);
formdata.append('offer_start',offer_start);
formdata.append('offer_end',offer_end); 
});

============php文件将数据插入数据库===========

  $item_desc =$_POST['item_desc'];
  $item_price_type=$_POST['item_price_type'];
  $item_regular_price=$_POST['item_regular_price'];
  $item_type=$_POST['item_type'];
   $item_cat=$_POST['item_cat'];
   $taxablee=$_POST['taxablee'];
  $price_tax=$_POST['price_tax'];
  $item_offer_price=$_POST['item_offer_price'];
   $offer_start=$_POST['offer_start'];
  $offer_end=$_POST['offer_end'];
   $item_image = $_FILES['file']['name'];
   $folder = "../menu_images/";
  $pics =time().$item_image;
 //$sq="// this is my insert statment";
  //$sq_insert =$conn->prepare($sq);
  //$sq_insert->execute(array(//these are my array values for the insert 
    statment));
   move_uploaded_file($_FILES["file"]["tmp_name"], $folder.$pics);

标签: javascriptphpajax

解决方案


为什么不只使用 html 表单来提交您的数据,而无需为此使用 javascript。

<form action="upload.php" method="post" enctype="multipart/form-data">
    <input type="file" name="fileToUpload" id="fileToUpload">
    <input type="submit" value="Upload Image" name="submit">
</form>

推荐阅读