我有MySql数据库和网站,在web i中显示表中的数据库值。我做了CSV导出指定数据库模型(表)。
`$this->view->table = $model->info('name');
$is_csv = $this->_getParam('csv');
if ($this->_request->isPost() && $is_csv) {
$file1 = 'Baudų sąrašas '.$date_from.' iki '.$date_to.'.csv';
$fp = fopen('php://output', 'w+');
if ($date_from) {
$select->where("date >= ?", $date_from . ' 00:00:00');
}
if ($date_to) {
$select->where("date <= ?", $date_to . ' 23:59:59');
}
$data = $model->fetchAll($select);
foreach ($data as $fields) {
fputcsv($fp, $fields->toArray());
}
fclose($fp);
if ($file1 !== false) {
header('Content-type: text/plain');
header('Content-Disposition: attachment; filename="' . $file1 . '"');
exit;
}
}`
调用它的HTML:
form method="post">
<div class="control-group pull-right">
<input type="hidden" name="table" value="<?php echo $this->table ?>" />
<button type="submit" class="btn" name="csv" value="csv"><?php echo Core_Locale::translate('CSV')?></button>
</div>
</form>
现在我想不是从数据库,而是从具有Join的函数到数据库,但是当我使用时
return $this->getAdapter()->fetchAll($select);
它给出了非对象错误,当我写return $this->fetchAll($select);
时,它给我作为数据基础数据,从函数...
有没有可能有一些线索如何做到这一点?
答案 0 :(得分:0)
这不是你问题的确切答案,但为什么不尝试这个..
SELECT * FROM my_table INTO OUTFILE 'my_table.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n';
复制自:export mysql list of tables from mysql to csv file using php