Edit
by aliyah23 mae - 9 years ago (2015-06-05)
I need to generate a report in PHP
| I am making an input system using HTML, PHP and MySQL. I am having a problem with generating a report. What possibly is the code that can solve my problem generating reports? |
- 1 Clarification request
1.
by Geraldo Patrício - 9 years ago (2016-02-14) Reply
Ask clarification
1 Recommendation
SpoolTemplate: Database report generation based on templates
SpoolTemplate (SpTpl) is a report system based on templates. It allows to build reports from database queries using just few lines of code.
Main features:
- Based on XML configuration files (each report has its own configuration files)
- To build a single report it requires few lines of PHP code as it is mainly based on the configuration files
- Output type: text file, PDF, printer (only Windows box)
- It gets the data to print from query or from globals variables
- You may output the data from your custom function (optionally you may pass as parameter the fields returned by the query)
- Each report may contain many tables and each table may display data from different queries eventually from different databases
- It supports page header and page footer (with page numbering) and page and margin sizes
- The databases suported by the current version are: MySQL, MSSQL and ODBC. You may write the extension to support other databases and specify it in the configuration file
- Text alignment (left, center, right)
- You may set the font name, the font size and decoration for each row
This package generates a spool file holding the report. You may manage that file at your convenience (i.e. print it using printer spooler commands as lp or similar, send it by e-mail, etc..)
This package parses a configuration file holding the detail how to build the report. It executes the instructions listed in that file and write the report as spool file.
Inside the configuration file there are directives that specify what text write as page header and footer, where to output the data (the sources are database or global variables).
After you define the data source query, the module executes the query, saves the columns of the rows returned from the query as normal variables, that change their values row by row; so you may access those columns as normal variables without distinction from data coming from query or data from PHP script or predefined constant.
You may monitor the field values. If those fields change their values, you may define what is outputted before and after each table. This is useful to generate special headers or total rows when you generate several tables grouped by one or more query fields.
The outputted values may come from user function. You may define your own function and use the returned values in the report in the place of a regular query field. This function may get its parameters from the report query fields.
| by Dave Smith 7620 - 9 years ago (2015-06-05) Comment
This one seems to be the most feature rich and highest rated. The class provided for mysql will eventually need to be updated to mysqli or PDO_mysql. Is uses XML documents to define the report layout and can output the reports in several formats. |