According to the code, there's two possible reasons behind the No valid data sent error:
public function exportAction()
{
if ($this->getRequest()->getPost(Mage_ImportExport_Model_Export::FILTER_ELEMENT_GROUP)) {
try {
/** @var $model Mage_ImportExport_Model_Export */
$model = Mage::getModel('importexport/export');
$model->setData($this->getRequest()->getParams());
return $this->_prepareDownloadResponse(
$model->getFileName(),
$model->export(),
$model->getContentType()
);
} catch (Mage_Core_Exception $e) {
$this->_getSession()->addError($e->getMessage());
} catch (Exception $e) {
Mage::logException($e);
$this->_getSession()->addError($this->__('No valid data sent'));
}
} else {
$this->_getSession()->addError($this->__('No valid data sent'));
}
return $this->_redirect('*/*/index');
}
Reason 1: An exception has been thrown
This corresponds to this bit of code:
Mage::logException($e);
$this->_getSession()->addError($this->__('No valid data sent'));
So you're getting this default message but that does not tell you what happened.
Fortunately the Mage::logException
line automatically logs the exception into the exception file which is var/log/exception.log
by default.
So I suggest you find out what the exception is by checking this file and edit your question with the exception that will help us fixing your issue.
Reason 2: The request does not contain the export_filter data
In case you don't have anything in your var/log/exception.log
file that means that no exception is being thrown and thus this is the following condition that is not matched:
if ($this->getRequest()->getPost(Mage_ImportExport_Model_Export::FILTER_ELEMENT_GROUP))
My suggestion in this case is to check the content of the request by adding:
Mage::log($this->getRequest()->getPost());
Right before the condition and then check in var/log/system.log
to see what the request contains.
If you get the error that means the request does not contain an entry called export_filter
The main reason I can think of is that maybe the PHP maximum POST size is reached and thus you need to increase the PHP variables mentionned by Fabian:
post_max_size=1024M
I highly doubt you have to deal with upload_max_filesize
as you're doing an export here and not an import.
max_execution_time
is not too short in.htaccess