This is the updated version for PHPMaker v2024, from similar topic for PHPMaker v2021: How to Load Data from Database into Custom Files (v2021).
Now we can also use Custom Files with Include common files DISABLED for PHPMaker v2024.
Make sure you have already updated template to the latest version from Tools -> Update Template.
Create a Custom File and name it as test.php, then copy and paste this code into Content section of the Custom File of demo2024 project of PHPMaker 2024 application:
<?php
namespace PHPMaker2024\demo2024;
use PHPMaker2024\demo2024\{UserProfile, Language, AdvancedSecurity, Timer, HttpErrorHandler, RouteAttributes};
use Psr\Http\Message\ServerRequestInterface as Request;
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Container\ContainerInterface;
use DI\Container as Container;
use DI\ContainerBuilder;
use Selective\SameSiteCookie\SameSiteCookieConfiguration;
use Selective\SameSiteCookie\SameSiteCookieMiddleware;
use Selective\SameSiteCookie\SameSiteSessionMiddleware;
use Slim\Factory\AppFactory;
use Slim\Factory\ServerRequestCreatorFactory;
use Slim\Exception\HttpInternalServerErrorException;
use Middlewares\Whoops;
use Dflydev\DotAccessData\Data;
global $RELATIVE_PATH;
// Autoload
require_once "vendor/autoload.php";
// Require files
require_once "src/constants.php";
require_once "src/config.php";
require_once "src/phpfn.php";
$ConfigData = new Data($CONFIG); // Ensure that $ConfigData is accessible by Global Codes
require_once "src/userfn.php";
echo "<h3>Custom File without Include common files option</h3>";
$sql = "SELECT `Model` FROM `models`"; // define your SQL
$stmt = ExecuteQuery($sql); // execute the query
$value = ""; // initial value
if ($stmt->rowCount() > 0) { // check condition: if record count is greater than 0
while ($row = $stmt->fetch()) { // loop
$value .= $row["Model"] . "<br>"; // in case the result returns more than one record, display it and separated by line break
} // end loop
echo "Here is the Models list: <br>" . $value; // display the result
} else { // if there are no result
echo "No record found."; // display the message
} // end of check condition
?>
Re-generate ALL the script files, as usual.
Visit the Custom File from browser: http://localhost/demo2024/test.php
The Limitation: The styles, header, footer, sidebar won't be implemented in this Custom File.
This trick is useful if you want to optimize the built-in functions regardless of the appearance / layout of your web application.