Copyright © 2007 SoftVelocity, All rights reserved worldwide

Clarion/PHP

The Clarion/PHP templates generate PHP web applications which provide query, navigation, and editing procedures for client/server databases over the web. The generated pages integrate into existing sites both in looks and via links to and from existing pages of the site.

The generated code includes important features necessary for public and high volume sites such as the ability to view only the parts of a database “owned” by an individual user. The resulting applications are highly reliable and very scalable.

There are five important things that Clarion developers should know about the Clarion/PHP development paradigm:

  • By providing a system that uses HTML templates and style sheets for the browser client layout, Clarion/PHP completely separates the User Interface from the Application and Business logic. This means the developer is free to concentrate on the application, and the web designer can make the page fit into the existing web design via HTML formatting and style sheets. Either side can make changes without affecting the other, yet not lose them at generation time.
  • The code generation system itself is template driven (of course). The developer doesn’t have to know anything about PHP, ADOdb, HTML design, or Cascading Style Sheets to produce a fully functional, fully customized application. As the second Clarion Template chain to produce non-Clarion applications, this is a transition point to a time in which Clarion developers will take their data dictionaries and decide what language to generate by deciding what target they wish to deploy to.
  • The system is completely extensible, via embed points. In this case, however, your embeds must consist of PHP statements. The system, as is, is very complete, but as always, Clarion provides unlimited options for the developer. (Note: if maintaining both desktop and PHP targets in a single app, PHP generation ignores the Clarion embed code, and Windows OS generation ignores the PHP embed code).
  • The Apache web server is the most popular web server in use today. PHP web applications can be run on the Apache server on any of the platforms supported by Apache and PHP, which inludes Linux and Windows, as well as many others.
  • PHP is a widely-used general-purpose scripting language that is especially suited for Web development

Requirements: compatible with Clarion 5.508 or Clarion 6

Frequentely Asked Questions


Do I have to know PHP to use the Clarion/PHP Templates?

The templates produce a complete working web page or pages to deliver a database web app; no additional custom code is necessary to utilize them.

I have never written any PHP code and need additional resources; where can I learn more about this technology.

There are many resources available on the Internet and in bookstores to learn PHP.

I am familiar with the Web Builder technology and modifying the HTML look and feel is tedious; do the Clarion/PHP templates work the same way?

No, an emphasis was placed on separating the business logic / data access from the user interface. The result is a run-time HTML template that contains “tokens” that are replaced at runtime with the corresponding data values. In addition 99% of the formatting, fonts, colors, sizes etc; are controlled by a generated Cascading Style Sheet. The starting HTML design-time template can be specified by you globally and on a procedure basis, this permits mass generation of a particular look and feel with the minimum amount of effort. These HTML templates can be modified in most WYSIWYG editors.

How is data validation performed?

There are several levels of validation: 1 - Each HTML input field receives JavaScript validation attributes which are constructed from your Data Dictionary and selections made in the Clarion/PHP templates interface. 2 - The Clarion/PHP “Processor Page” which receives a submitted HTML form also contains validation rules built from the Data Dictionary and selections made in the Clarion/PHP templates interface. Both of these tests are applied prior to any database updates. 3 – The final validation tests are any constraints and rules that have been defined at the column level in the database by the DBA.

I am familiar with web entry forms and they are not feature rich; how is the Clarion/PHP solution different?

The Clarion/PHP templates generate industry standard HTML designed to work on the broadest number of web browsers. We have also introduced a number of features that recreate several must-have “desktop” like functions: a pop-up calendar, must-be-in-list, and must-be-in-file select controls (dropdowns), pop-up help screens, and pop-up select procedures which can return multiple column values.

I have my own JavaScript library of functions can I use them?

Yes, by using the correct HTML include statement in your HTML design-time template you have access to your existing library.

I would like to modify the standard PHP Script that is generated can I do that?

Yes, you have two options. 1 – You can use the appropriate EMBED point within the IDE to enter your own code which will be preserved on subsequent generations. 2 – You can modify the generated PHP code, and then mark the generated file as Read-Only.

My customer has modified the HTML run-time templates and CSS files that I deployed and I want to update the PHP code, can I do this without making the changes again?

Yes, you have the option with the Clarion/PHP templates to suppress generation of the HTML and CSS files globally or on a procedure basis. Additionally you can merely choose not to deploy them once generated.

Are my Dictionary settings enforced?

We implement every option and attribute possible given the architecture. There are some differences such as picture formatting. On a column basis we allow you to select from a standard list of PHP format functions.

I cannot find an answer to my question, what are my options?

You can contact SoftVelocity via email, telephone 800-270-4562, call your Distributor or visit the public newsgroupsand post a question.

 


Copyright © 2007 SoftVelocity, All rights reserved worldwide