Use of PHP to generate (X)HTML compliant forms from XForms

Do you have a question? Post it now! No Registration Necessary.  Now with pictures!

Threaded View
I've been struggling for a long time with HTML_Quickform from PEAR. The  
concept is ideal, but, the implementation is (IMHO) a bit of a kludge.

As a developer I want a quick and easy way to generate/validate/process  
forms without hand hacking HTML, however, I also want it to be easy to  
do! The HTML_Quickform method seems to require more work than it should  
and whenever you start getting really complicated forms, the hassle  
starts to outweigh the benefits.

I know XForm is currently lacking client-side support, but, with the  
implemtation of decent XML parsing functions on PHP5 I'm suprised by  
the lack of uptake in this area. XForm would be an ideal way of  
managing the process, extremely lightweight XML that can be processed  
on the server-side and sent as standard HTML to the client. Once the  
client-side support picks up then you can just present the original XML  
and no-need to re-code your app.

Are there some projects that perhaps I haven't found? I noticed they're  
working on HTML_Quickform2 to make up PHP5 compatibility, surely a  
better solution would be to push forward with Xforms? Or is it more  
policital, I know XForms have been around a while, is there something  
stopping them getting the support they need.

Any comments?


Re: Use of PHP to generate (X)HTML compliant forms from XForms

Andrew Taylor wrote:
Quoted text here. Click to load it


I just find it easier to write the HTML code.  It isn't that hard, and  
it goes pretty quickly.  And I have yet to find any form generation  
software which gives me the control I need over them (also, I use a lot  
of CSS).

Code to do validation doesn't help at all, either - since I use a lot of  
classes and do the validation at the class level.

I've tried a couple of generators in the past, and found they take me  
almost twice as long to get the same effect as just doing it myself.

Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.

Re: Use of PHP to generate (X)HTML compliant forms from XForms

Jerry Stuckle wrote:

Quoted text here. Click to load it

I'm not a fan of any of the established form generation stuff and am
currently working on my own:

Not finished yet, but it's already possible to create some fairly nifty
multi-tabbed forms with it.

I'm working on some proper examples and documentation, which I'll
hopefully have ready by the end of the coming week. Once it's done the
result will be available here:

Toby A Inkster BSc (Hons) ARCS
Contact Me ~
Geek of ~ HTML/SQL/Perl/PHP/Python*/Apache/Linux

* = I'm getting there!

Re: Use of PHP to generate (X)HTML compliant forms from XForms


on 02/25/2007 07:48 AM Andrew Taylor said the following:
Quoted text here. Click to load it

I don't know aboyt Quickform class because I don't use it, but it seems
the problem is that you are not able to customize the form templates.

I use this other class that also has an automatic layout renderer like
quickform, but it lets you customize the input row templates.

The class can also let you render forms with custom HTML templates or
even Smarty templates:

Take a look at some live examples with source code here:


Manuel Lemos

Metastorage - Data object relational mapping layer generator

PHP Classes - Free ready to use OOP components written in PHP

Re: Use of PHP to generate (X)HTML compliant forms from XForms

Quoted text here. Click to load it

Maybe you can check out the php2go framework(http:// It has a nifty form creation method wherein you
can define the fields in XML and combine it with a tpl file and voila
you have a form which includes both server-side and client-side
validation. Not only that it includes lot of useful stuff as well.

I personally use it for medium to big sized projects. For simpler
stuff you can check out the library i created using PEAR classes +
some other good stuff i found on the net and wrapped it around a
controller. Download it from here

Run the setup file in the setup folder or modify the config.php file

ac sandeep

Site Timeline