This is the config array for clonefish which generates the form you've just seen. How can you use such an array?
<?php
$config = Array(
'inputRadio' => Array(
'type' => 'inputRadioDynamic',
'displayname' => 'inputRadioDynamic<br> with a "row-by-row" layout',
'values' => Array( 0 => 'no choice' ),
'sql' => 'SELECT id, title FROM books',
'itemlayout' => '%radio% %label%<br />',
'layout' => '%s',
),
'inputRadioDiv' => Array(
'type' => 'inputRadioDynamic',
'displayname' => 'inputRadioDynamic - the same one with a divider',
'values' => Array( 0 => 'no choice' ),
'sql' => 'SELECT id, title FROM books',
'layout' => '<table><tr><td> %s </td></tr></table>',
'itemlayout' => '%radio% %label%<br />',
'layout' => '%s',
'divide' => 2,
'divider' => ' </td><td> ',
),
);
?>
To create a form using this array you'll only need a few lines of code:
<?php
// create the form object
$clonefish = new clonefish( 'loginform', 'test.php', 'POST' );
// setup codepage so your data will be handled
// perfectly by the appropriate string functions
$clonefish->codepage = 'utf-8';
$clonefish->multibytesupport = 'multibyteutf8';
// add the form elements (fields) pre-filled with
// values from $_POST
$clonefish->addElements( $config, $_POST, get_magic_quotes_gpc() );
// validate the form if the form has been submitted
if ( count( $_POST ) && $clonefish->validate() ) {
// form is valid, go and store values in database, etc.
// $clonefish->getElementValues() provides a
// normalized value array.
}
else
// if the form wasn't submitted yet or the validation
// had failed, show the form (automatically
// including error messages)
echo
"<html><body>" .
$clonefish->getHTML() .
"</body></html>";
?>