सबसे पहले serialize() फ़ंक्शन फ़ाइल के लिए काम नहीं करता है, आपको फॉर्म का एक ऑब्जेक्ट बनाना चाहिए जिसके माध्यम से आप डेटा पोस्ट कर सकते हैं और पूरी तरह से काम करेंगे मुझे एक ही समस्या थी और मैंने अभी आपकी समस्या का समाधान किया है और 100% काम कर रहा है क्योंकि मैंने इसका परीक्षण किया है। कृपया देखें। फॉर्म।
<form name="multiform" id="multiform" action="process.php" method="POST" enctype="multipart/form-data">
name : <input type="text" name="name" id="name"/>
</br>
message : <input type="text" name="message" id="message" />
</br>
Image : <input type="file" name="file" id="file" />
</form>
<input type="button" id="multi-post" value="Run Code"></input>
<div id="multi-msg"></div>
स्क्रिप्ट।
<script type="text/javascript">
$(document).ready(function(){
$("#multiform").submit(function(e)
{
var formObj = $(this);
var formURL = formObj.attr("action");
if(window.FormData !== undefined)
{
var formData = new FormData(this);
$.ajax({
url: formURL,
type: 'POST',
data: formData,
mimeType:"multipart/form-data",
contentType: false,
cache: false,
processData:false,
success: function(data, textStatus, jqXHR)
{
$("#multi-msg").html('<pre><code>'+data+'</code></pre>');
},
error: function(jqXHR, textStatus, errorThrown)
{
$("#multi-msg").html('<pre><code class="prettyprint">AJAX Request Failed<br/> textStatus='+textStatus+', errorThrown='+errorThrown+'</code></pre>');
}
});
e.preventDefault();
e.unbind();
}
});
$("#multi-post").click(function()
{
//sending form from here
$("#multiform").submit();
});
});
</script>
'); }, error:function(jqXHR, textStatus, errorThrown) { $("#multi-msg").html('AJAX अनुरोध विफल
textStatus='+textStatus+', errorThrown='+errorThrown+'
'); } }); e.preventDefault(); e.unbind( ); }});$("#multi-post"). क्लिक करें (फ़ंक्शन() { // यहां से फॉर्म भेजना $("#multiform").submit();});}); और आपकी php फ़ाइल वही है जिसका मैंने परीक्षण किया है और काम कर रही है।
<?php
mysql_connect("localhost","root","");
mysql_select_db("ajaxdatabase");
$name=$_POST["name"];
$message=$_POST["message"];
//storing file in filename variable
$fileName = $_FILES['file']['name'];
//destination dir
$to="image/".$fileName;
move_uploaded_file($_FILES['file']['tmp_name'],$to);
$query=mysql_query("INSERT INTO common(name,message,destination) values('$name','$message','$to') ");
if($query){
echo "Your comment has been sent";
}
else{
echo "Error in sending your comment";
}
?>