Where a calculator on the ENIAC is equipped with 18,000 vacuum tubes and weighs 30 tons, computers in the future may have only 1,000 vacuum tubes and weigh only 1.5 tons.
– Popular Mechanics, March 1949
Ik denk dat je beter kunt zoeken naar "crud" in plaats van "form", want dat is wat je eigenlijk zoekt
- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!
Aan je lijstje voldoet PEAR::DB_Table prima en ik vind 't een erg geschikte tool om snel formuliertjes mee op te maken.
Ik werk met:
Pear HTML_Quickform
PHP doctrine.
En dat ziet er dan zo uit:
- Je hoeft je niet meer druk te maken om error afhandeling enzo. Zowel client als server side.
- Form defaults kan je makkelijk aangeven.
- Er zijn verschillende form renderers beschikbaar...
- Er is een enorme verscheidenheid aan formulier velden beschikbaar in Pear HTML_Quickform.
Pear HTML_Quickform
PHP doctrine.
En dat ziet er dan zo uit:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
| public function brandFormAction() { $form =& new HTML_QuickForm('firstForm','post','/brandForm'); $renderer =& new HTML_QuickForm_Renderer_Tableless(); $request = Zend::registry('request'); $conn = Doctrine_Manager::getInstance()->getCurrentConnection(); //Bouw de tabstrip $tabstrip = new Tabstrip('firstForm' , SITE_URL, true); $tabstrip->addTab('brandForm/'.$this->_getParam('brand_id'), 'Merk'); $tabstrip->addTab('brandImages/'.$this->_getParam('brand_id'), 'Afbeeldingen'); if($this->_getParam('brand_id')) { $form->addElement('hidden', 'id', $this->_getParam('brand_id')); $product_brand_table = $conn->getTable("Product_Brand"); $brand = $product_brand_table->find($this->_getParam('brand_id')); $form->setDefaults(array( 'name' => $brand->name, 'code' => $brand->code, 'description' => $brand->description )); } $form->addElement('header', null, 'Merk toevoegen/wijzigen'); $form->addElement('hidden', 'redirect_url', $request->get('redirect_url'), array('id' => 'redirect_url')); $form->addElement('text', 'name', 'Merk naam:', array('maxlength' => 255)); $form->addElement('text', 'code', 'Merk code:', array('maxlength' => 255)); $form->addElement('textarea', 'description', 'Merk omschrijving', array('size' => 50) ); $form->addElement('submit', null, 'Bewaar', array('class' => 'submit-button') ); $form->addRule('name', 'Vul een merknaam in', 'required', null, 'client'); if ($form->validate()) { $this->_forward('brand','brandCreate'); } else { // Output the form //$form->display(); $form->accept($renderer); $view = Zend::registry('view'); $view->addViewScript('brandFormView.php'); $view->tabstrip = $tabstrip->toHtml(); $view->form = $renderer->toHtml(); } } public function brandCreateAction() { $request = Zend::registry('request'); if($request->get('id')) { $conn = Doctrine_Manager::getInstance()->getCurrentConnection(); $product_brand_table = $conn->getTable("Product_Brand"); $brand = $product_brand_table->find($request->get('id')); } else { $brand = new Product_Brand(); } $brand->name = $request->get('name'); $brand->description = $request->get('description'); $brand->code = $request->get('code'); $brand->save(); if($request->get('redirect_url') == "") { $this->_redirect('/brandForm/'.$brand->id); } else { $this->_redirect($request->get('redirect_url')); } } |
- Je hoeft je niet meer druk te maken om error afhandeling enzo. Zowel client als server side.
- Form defaults kan je makkelijk aangeven.
- Er zijn verschillende form renderers beschikbaar...
- Er is een enorme verscheidenheid aan formulier velden beschikbaar in Pear HTML_Quickform.
Ik ben behoorlijk fan van Formhandler.
Een goed geschreven, goed gedocumenteerde class voor formulieren, met alle denkbare velden.
Doordat het een Nederlands project is heb je ook gelijk de juiste validatie voor postcodes, telefoonnummers, etc.
Een goed geschreven, goed gedocumenteerde class voor formulieren, met alle denkbare velden.
Doordat het een Nederlands project is heb je ook gelijk de juiste validatie voor postcodes, telefoonnummers, etc.
* rewind. is absoluut met orf eens
gebruik het sinds ik het heb bij ieder project!
gebruik het sinds ik het heb bij ieder project!
Bij postcodes mogen een aantal combinaties van letters niet gebruikt worden (SA, SD en SS) welke wel door de validatie heen komen. Ook is de telefoonnummer controle erg gebrekkig als je het naast het betreffende wikipedia artikel legt.orf schreef op donderdag 11 januari 2007 @ 21:25:
Doordat het een Nederlands project is heb je ook gelijk de juiste validatie voor postcodes, telefoonnummers, etc.
[ Voor 4% gewijzigd door PrisonerOfPain op 12-01-2007 00:39 ]
Pagina: 1