One of the great features of solar concerns auto creation of forms. Not only will Solar auto build a form based on a model record but it will also do basic formatting depending on filters.. For example if $item->states is validation using a list of states then the form generator will create a select box with that list of states to choose from.

Ok, so you now you know how great it is, lets get to the "Short" part of things

In your controller

// This assumes your model catalog is loaded in $this->_model
$item = $this->_model->users->fetchNew();

// We might have columns we don't want to show or collect at this time
$cols = array('handle', 'email', 'passwd');

// Pass an array of columns to handle.. If no array it defaults to all columns except some specialized ones
$this->form = $item->newForm($cols);

// Check to see if we have posted values and populate the form object with them
$this->form->populate();

// Is this a submit for the save form and does the form validate
if ($this->_isProcess('save') && $this->form->validate()) {
  // We are validated, load the form values into our item
  // Forms are "named/keys" after the model it was built on
  $item->load($this->form->getValues('users');

  // Now all we need to do is save
  $item->save();
}

And in your view you would do the following

echo $this->form()
          ->auto($this->forms['register'])
          ->addProcess('save');

You now have a fully functional form that will create new users.. Enjoy