File "export.php"
Full Path: /www/wwwroot/shphe-en.com/wp-content/plugins/contact-form-7-database/admin/export.php
File size: 1.87 KB
MIME-type: --
Charset: utf-8
<?php
if (!defined('ABSPATH')) {
exit('Direct\'s not allowed');
}
add_action('cf7d_after_bulkaction_btn', 'cf7d_after_bulkaction_btn_export_cb', 10);
function cf7d_after_bulkaction_btn_export_cb($fid)
{
?>
<select id="cf7d-export" name="cf7d-export" data-fid="<?php echo $fid; ?>">
<option value="-1"><?php _e('Export to...'); ?></option>
<option value="csv"><?php _e('CSV'); ?></option>
</select>
<button class="button action" type="submit" name="btn_export"><?php _e('Export'); ?></button>
<?php
}
add_action('cf7d_main_post', 'cf7d_export_action_cb');
function cf7d_export_action_cb()
{
if (isset($_GET['cf7d-export']) && isset($_GET['btn_export'])) {
add_filter('cf7d_get_current_action', false);
$fid = (int)$_GET['fid'];
$ids_export = ((isset($_GET['del_id'])) ? implode(',', $_GET['del_id']) : '');
$type = $_GET['cf7d-export'];
switch ($type) {
case 'csv':
cf7d_export_to_csv($fid, $ids_export);
break;
case '-1':
return;
break;
default:
return;
break;
}
}
}
function cf7d_export_to_csv($fid, $ids_export = '')
{
global $wpdb;
$fields = cf7d_get_db_fields($fid);
$data = cf7d_get_entrys($fid, $ids_export, 'data_id desc');
$data_sorted = cf7d_sortdata($data);
header("Content-type: text/x-csv");
header("Content-Disposition: attachment; filename=cf7-database.csv");
$fp = fopen('php://output', 'w');
fputs($fp, "\xEF\xBB\xBF");
fputcsv($fp, array_values($fields));
foreach ($data_sorted as $k => $v) {
$temp_value = array();
foreach ($fields as $k2 => $v2) {
$temp_value[] = ((isset($v[$k2])) ? $v[$k2] : '');
}
fputcsv($fp, $temp_value);
}
fclose($fp);
exit();
}