¿Cuál es la forma más simplista de generar informes en el marco de Codeigniter? ¿Hay alguna biblioteca disponible para hacer esta tarea? Excepto graficar cuales son los otros recursos para hacer esto.Informes en Codeigniter
14
A
Respuesta
41
Encontré una buena solución yo mismo. Si desea generar informes en formato csv, es muy fácil con codeigniter. Su función modelo
function index(){
return $query = $this->db->get('my_table');
/*
Here you should note i am returning
the query object instead of
$query->result() or $query->result_array()
*/
}
Ahora en el controlador
function get_report(){
$this->load->model('my_model');
$this->load->dbutil();
$this->load->helper('file');
/* get the object */
$report = $this->my_model->index();
/* pass it to db utility function */
$new_report = $this->dbutil->csv_from_result($report);
/* Now use it to write file. write_file helper function will do it */
write_file('csv_file.csv',$new_report);
/* Done */
}
No se requieren externos todo está disponible en codeigntier. ¡Aclamaciones! Si desea escribir un archivo xml, también es fácil.
Simplemente use xml_from_result()
método de dbutil y use write_file('xml_file.xml,$new_report)
Visite estos enlaces le ayudarán.
Y
0
explicación completa:
Modelo:
class Csv_m extends MY_Model {
function getCSV() {
$sql = "SELECT * FROM tablename";
return $this->db->query($sql);
}
}
controlador:
class Generate extends CI_Controller {
var $file_path;
public function __construct() {
parent::__construct();
$this->file_path = realpath(APPPATH . '../assets/csv');
}
function index() {
$this->load->model('csv_m');
$this->load->dbutil();
$this->load->helper('file');
//get the object
$report = $this->csv_m->getCSV();
$delimiter = ",";
$newline = "\r\n";
$new_report = $this->dbutil->csv_from_result($report, $delimiter, $newline);
// write file
write_file($this->file_path . '/csv_file.csv', $new_report);
//force download from server
$this->load->helper('download');
$data = file_get_contents($this->file_path . '/csv_file.csv');
$name = 'name-'.date('d-m-Y').'.csv';
force_download($name, $data);
}
}
0
Lo usé para mis informes .csv. tiene la capacidad de cambiar el nombre de los campos de la base de datos en el archivo csv. aquí está el código.
public function export_csv() {
$file_name = 'File_name_'.date("Y-m-d h-i-s").'.csv';
$query = $this->db->query('SELECT
id as "Id", // id is table id and Id is the csv header field.
franchiseopt as "Nearest Location",
hear_about_us as "How did you hear about us?",
specify as "Specify",
email as "Email",
noguests as "Number of Guests",
eventdate as "Date of Event",
name as "Your Name",
phone as "Phone Number",
locationevent as "Location of Event",
message as "More Details"
FROM TABLE_NAME ORDER BY id DESC');
$this->load->dbutil();
$data = $this->dbutil->csv_from_result($query);
$this->load->helper('download');
force_download($file_name, $data);
exit();
}
Obviamente, debe reemplazar los campos de la tabla de la base de datos de acuerdo con su tabla.
Cuestiones relacionadas
- 1. informes de servicios acceso anónimo a informes
- 2. set_error_handler en Codeigniter?
- 3. Uniones múltiples en Codeigniter
- 4. error PHPExcel en Codeigniter
- 5. Clases personalizadas en CodeIgniter
- 6. CMS basado en CodeIgniter
- 7. Paypal en CodeIgniter
- 8. usuario en CodeIgniter 2.1.0
- 9. Rutas en Codeigniter - Automáticamente
- 10. parámetros opcionales en CodeIgniter
- 11. Detener el secuestro del servidor de informes SQL/Informes
- 12. Informes con db4o
- 13. Telerik ¿Informes sobre SSRS?
- 14. PDF generación de informes
- 15. Informes de Bugzilla
- 16. Agrupar varios informes en uno en SSRS
- 17. Informes automáticos de diferencias
- 18. herramientas de informes php
- 19. CodeIgniter + CSS
- 20. Codeigniter global_xss_filtering
- 21. Salir CodeIgniter
- 22. Enrutamiento CodeIgniter
- 23. Uso de babosas en codeigniter
- 24. actualización de sesión en codeigniter
- 25. ¿Cómo usar carpetas en Codeigniter?
- 26. Cargar archivos múltiples en CodeIgniter
- 27. Problemas con codeigniter en ubuntu
- 28. Trabajando con SQLite en codeigniter
- 29. Interfaz con MongoDB en CodeIgniter
- 30. Pantalla en blanco con CodeIgniter
En mi experiencia no encontré nada. ¿Puedo saber qué tipo de informe está buscando exactamente? – LoganPHP
quiero generar el informe de una consulta. ¿Debería haber algún formato csv, pdf u otro –