Frequently Asked Questions

From HTML5 Builder
Jump to: navigation, search

If you have any doubt about HTML5 Builder, check out this list of Frequently Asked Questions before you ask. It will save you a lot of time.

Installation

Will HTML5 Builder conflict with previous versions?

HTML5 Builder can be installed along with any previous version of the application without risks. You may even run both applications at the same time, and they will behave as expected anyway.

Development

Define the first page of the application

In HTML5 Builder, there is no such a concept. That is, the user can execute any script from your web application without running the first page. That’s why there is not such an option.

However, you can choose a main page to be executed every time you run your application, instead of running the current script.

How does require_once() and use_unit() work?

The first require_once() on forms includes the rpcl/rpcl.inc.php script, which is the starter for the RPCL. That script provides the use_unit() function, which is part of the RPCL.

Paths are relative to the rpcl folder. For example:

// rpcl.inc.php must be in a subfolder of your application.
require_once("rpcl/rpcl.inc.php");

// forms.inc.php must be in the rpcl folder.
use_unit("forms.inc.php");

// yourscript.inc.php must be in a subfolder inside rpcl folder.
use_unit("subfolder/yourscript.inc.php");

For additional information on including external PHP files from a PHP file, check php.net/manual/en/function.require-once.php.

Deployment

Looking at the installation directory I cannot find any rpcl-bin subdirectory, but the source code of my web page refers to it

When the RPCL folder is on a higher level than the running application, the framework uses rpcl-bin as an alias to the folder the RPCL resides, so you will need to add that alias to your webserver.

Internal Server

Does HTML5 Builder overwrite my Apache and PHP settings?

No, versions of Apache and PHP provided by HTML5 Builder are not installed in your machine, they are just copied and then used by HTML5 Builder, so it doesn’t interfere with your system.

I am trying to modify php.ini in HTML5 Builder’s PHP copy, but HTML5 Builder restores it to its previous state

For instructions on how to change HTML5 Builder PHP settings, check this page.

I am trying to modify httpd.conf in HTML5 Builder’s internal Apache server, but HTML5 Builder restores it to its previous state

The file you need to tweak is httpd.template.conf, not httpd.conf, the IDE uses the .template to generate the .conf.

PHP error lacks a stack trace

When you open a PHP scripts that contains a language error, a dialog window will pop up to inform you.

By default, the dialog window will not provide any details about the error. If you cannot figure out where the issue is, you can change the PHP settings of the internal webserver so a stack trace is provided when errors occur. Then, you will get additional dialog windows displaying that additional information that will help you locate and fix the error in your script.

Performance

Why is HTML5 Builder Designer slower than Delphi’s?

In Delphi, Designer is faster because controls are native Win32 controls. In HTML5 Builder, components are PHP components, and their code must be executed before they are updated in the Designer. Yet, we are working on improving its performance with each new update and release.

Some operations or applications run slow

If you run in debug-mode, the code is processed also by the debugger, which makes things slower. Try running without debugging.

Also, HTML5 Builder’s Apache server keeps logs. You can disable logging if you need to.

Components

How to access the generated HTML code?

You can see the code generated at design-time (which is not always the same as the one generated on the deployed webpage) by using the Tag Viewer from the Designer (<> button on the secondary toolbar, towards the right side).

You can see the actual code generated on the webpage from the web browser, which usually allows to see the source code of the webpage (Ctrl+U in most browsers).

With the developer tools of a browser, you can usually run JavaScript code on the page (JavaScript console). With that feature, you can also run $("#ComponentName_outer") to get the source code of a given component.

How to add custom HTML to the generated code?

You have several choices:

See Also