source

This is the config array for clonefish which generates the form you've just seen. How can you use such an array?

<?php

  $info 
'
    Sometimes styling fieldsets can be very tricky, as 
    several browsers (mostly the IE family) do not support 
    detailed styling for fieldset and/or legend. In such cases 
    you can still use the layout setting of this element type 
    to replace even the entire fieldset \'logic\' to DIVs and 
    H1s instead for example.
  '
;

  
$fieldsetlayout '
    <p>
      <h4>%legend%</h4>
      %prefix%
        %content%
      %postfix%
    </p>
  '
;

  
$config = Array(

    
'fieldset1' => Array(
      
'type'   => 'fieldset',
      
'legend' => 'This is the first fieldset',
      
'layout' => $fieldsetlayout,
    ),

    
'inputText' => Array(
      
'type'           => 'inputText',
      
'displayname'    => 'A plain text field',
    ),

    
'inputPassword' => Array(
      
'type'           => 'inputPassword',
      
'displayname'    => 'A password field',
    ),

    
'fieldset2' => Array(
      
'type'    => 'fieldset',
      
'legend'  => 'This is the second fieldset',
      
'layout'  => $fieldsetlayout,
      
'submit'  => 1,
      
'prefix'  => 'This is a fieldset prefix!'
      
'postfix' => 'How about a postfix?'
    ),

    
'textarea' => Array(
      
'type'           => 'textarea',
      
'html'           => 'cols="20" rows="3"',
      
'displayname'    => 'A textarea',
    ),

    
'inputHidden' => Array(
      
'type'           => 'inputHidden',
      
'value'          => "something you don't want the users to see",
    ),

  );


?>

usage example

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$_POSTget_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>";

?>

But there's so much more than just displaying the form - be sure to read the
reference pages and the introduction!