<?php $def = array('test1' => new ezcInputFormDefinitionElement(ezcInputFormDefinitionElement::REQUIRED, 'string', FILTER_FLAG_STRIP_HIGH), 'test2' => new ezcInputFormDefinitionElement(ezcInputFormDefinitionElement::OPTIONAL, 'int', array('min_range' => 42)), 'test3' => new ezcInputFormDefinitionElement(ezcInputFormDefinitionElement::OPTIONAL, 'int', array('min_range' => 42))); $form = new ezcInputForm(INPUT_POST, $def); echo "Valid properties:\n"; var_dump($form->getValidProperties()); echo "Invalid properties:\n"; var_dump($form->getInvalidProperties()); echo "Required properties:\n"; var_dump($form->getRequiredProperties()); echo "Optional properties:\n"; var_dump($form->getOptionalProperties()); echo "Values:\n"; var_dump($form->hasValidData('test1')); var_dump($form->test1); try { var_dump($form->getUnsafeRawData('test1')); } catch (ezcInputFormException $e) { echo $e->getCode(), ': ', $e->getMessage(), "\n"; } echo "<hr/>\n"; var_dump($form->hasValidData('test2')); try { var_dump($form->test2); } catch (ezcInputFormException $e) { echo $e->getCode(), ': ', $e->getMessage(), "\n"; } try { var_dump($form->getUnsafeRawData('test2')); } catch (ezcInputFormException $e) { echo $e->getCode(), ': ', $e->getMessage(), "\n"; }
<?php if (ezcInputForm::hasGetData()) { $form = new ezcInputForm(INPUT_GET, $definition); foreach ($definition as $name => $dummy) { $propertyName = "property_{$name}"; $propertyWarningName = "warning_{$name}"; if ($form->hasValidData($name)) { ${$propertyName} = $form->{$name}; } else { ${$propertyName} = htmlspecialchars($form->getUnsafeRawData($name)); ${$propertyWarningName} = '[invalid]'; } } }
public function testGetUnsafeRawDataNoDataField() { $def = array('test2' => new ezcInputFormDefinitionElement(ezcInputFormDefinitionElement::OPTIONAL, 'int'), 'test3' => new ezcInputFormDefinitionElement(ezcInputFormDefinitionElement::OPTIONAL, 'int')); try { $obj = new ezcInputForm(INPUT_GET, $def); $obj->getUnsafeRawData('test2'); self::fail("No exception, where we should have had one"); } catch (ezcInputFormFieldNotFoundException $e) { self::assertEquals("The field 'test2' could not be found in the input source.", $e->getMessage()); } }