index.phtml
<form enctype="multipart/form-data" name="bidtask_form" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000000" />
Send this file: <input name="thumbnail" type="file" />
<input type="button" value="Send File" onclick="saveRecord();"/>
</form>
bidtask.js
function GetXmlHttpObject()
{
var xmlHttp=null;
try{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e){
//Internet Explorer
try {
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e){
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
function saveRecord() {
ajaxObj=GetXmlHttpObject();
if (ajaxObj) {
thumbnail = document.bidtask_form.thumbnail.value;
var postStr = "thumbnail=" + encodeURIComponent(thumbnail) + "&MAX_FILE_SIZE=" + encodeURIComponent("1000000000");
var url="save";
ajaxObj.open("POST",url,true);
ajaxObj.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
ajaxObj.setRequestHeader("Content-length", postStr.length);
ajaxObj.setRequestHeader("Connection", "close");
ajaxObj.send(postStr);
ajaxObj.onreadystatechange = stateChanged;
} else {
alert("Your browser does not support ajax!");
}
}
function stateChanged(transport)
{
if (ajaxObj.readyState == 4) {
var resultStr = ajaxObj.responseText;
document.getElementById("deleteMsg").innerHTML = resultStr;
var t = setTimeout("clearMessage()",3000);
}
}
bidController.php
public function saveAction()
{
if($_SESSION['status'] == 'login')
{
$this->_helper->viewRenderer->setNoRender();
$db = CommonServices::getDbFactory();
print_r($_FILES); // I have problem in this line it is returning null.
exit;
$tmpName = $_FILES['thumbnail'];
if($tmpName!=''){
if(filesize($tmpName) <= 3200){
$fp = fopen($tmpName, 'r+');
$content = fread($fp, filesize($tmpName));
fclose($fp);
}else{
echo "Maximum file size 25 KB only";
exit;
}
}else{
$content = "";
}
$data = array(
'thumbnail' => $content
);
$db->insert('shottask',$data);
echo 'Data inserted successfully';
}
else
{
$this->_redirect("/");
}
}