<?php
/* project: AJAX form, file: index.php */
//Include pclib framework
require 'pclib/pclib.php';
//Create pclib application
$app = new PCApp('demo');
//Initialize form template
$form = new PCForm('tpl/ajaxform.tpl');
//we setup ADEMO select from php, just because I am lazy to put it in the database.
$form->elements['ADEMO']['items'] = array(
1 => 'Populate form fields',
2 => 'Set fields read-only',
3 => 'Change some attributes',
4 => 'Hide part of form'
);
//Here goes all ajax requests...
if ($app->action == 'ajax') {
switch($form->values['ADEMO']) {
case 1:
$form->_NAME = 'John';
$form->_SURNAME = 'Doe';
$form->_COUNTRY = 1;
$form->_SEX = 'M';
$form->_INTERESTS = '1,2,3';
$form->_COMMENT = 'You can setup form values just as usual.';
break;
case 2:
$form->_NAME->noedit = 1;
$form->_SEX->noedit = 1;
$form->_SURNAME->noedit = 1;
$form->_COUNTRY->noedit = 1;
$form->_INTERESTS->noedit = 1;
break;
case 3:
$form->_NAME->attr = 'style="border: 3px solid #99f"';
$form->_NAME->size = 100;
$form->_SEX->list = 'M,Male,F,Female,R,Robot,U,Unknown';
$form->_INTERESTS->type = 'select';
$form->_INTERESTS->size = null;
$form->_INTERESTS->default = 2;
break;
case 4:
$form->_b_down->noprint = 1;
print $form->ajaxSync('b_down');
return;
break;
}
print $form->ajaxSync();
return;
}
if ($form->submitted) var_dump($form->values);
print $form;
?>
Elapsed time: 19.37 ms