Próbuję przesłać plik przez ajax wraz z niektórymi polami w formularzu. Jednak to nie działa. Dostaję ten błąd.Wysyłanie pliku wraz z danymi formularza przez ajax post
Undefined Index: - File
Oto mój kod.
HTML
<!-- File Button -->
<div class="form-group">
<label class="col-md-4 control-label" for="file">Upload Software/File</label>
<div class="col-md-4">
<input id="file" name="file" class="input-file" type="file">
</div>
</div>
<div class="form-group">
<label class="col-md-4 control-label" for="price">Price($)</label>
<div class="col-md-4">
<input id="price" name="price" type="text" placeholder="Price" class="form-control input-md" required="">
</div>
</div>
Ajax
$("#add_product").click(function(e){
e.preventDefault();
product_name = $("product_name").val();
//d = $("#add_new_product").serialize();
$.ajax({
type: 'POST',
url: 'ajax.php',
data: $("#add_new_product").serialize(),
success: function(response)
{
//
alert(response);
}
})
});
PHP
if (0 < $_FILES['file']['error'])
{
echo ":!";
}
else
{
echo "ASa";
}
Co ja tu brakuje?
pokrewne: http://stackoverflow.com/questions/166221/how-can-i-upload-files-asynchronously/8758614#8758614 – Und3rTow
@ M.Doye Problem polega na tym, że mam więcej danych razem z plikiem, co powoduje kłopoty. – Akshay
Funkcja szeregowania nie zawiera pliku w zmiennej danych, istnieje inny mechanizm do osiągnięcia tego, proszę google go. – siddhesh