Edit report at http://pear.php.net/bugs/bug.php?id=18683&edit=1

ID: 18683
Updated by: borz_off@cs.msu.su
Reported By: adam at eryjus dot com
Summary: $id with blanks not handled correctly
-Status: Assigned
+Status: Closed
Type: Feature/Change Request
Package: HTML_QuickForm2
Operating System: Fedora Core 14
Package Version: 0.6.0
PHP Version: 5.3.6
Assigned To: avb
Roadmap Versions:
New Comment:

-Status: Assigned
+Status: Closed
This bug has been fixed in SVN.

If this was a documentation problem, the fix will appear on pear.php.net
by the end of next Sunday (CET).

If this was a problem with the pear.php.net website, the change should
be live shortly.

Otherwise, the fix will appear in the package's next release.

Thank you for the report and for helping us make PEAR better.

Previous Comments:

[2011-08-04 11:04:21] avb

-Status: Bogus
+Status: Assigned
-Type: Bug
+Type: Feature/Change Request
-Assigned To:
+Assigned To: avb
It may indeed make sense to throw an exception for incorrect id in
setId() method. It may also make sense to route setting the form's id
through that method instead of doing it in the constuctor.


[2011-07-26 03:38:12] eryjus


Thank you and understood.

With that said, wouldn't it be prudent for the constructor to throw an
exception when an invalid argument is passed to it (such as the illegal


[2011-07-25 12:21:56] avb

-Status: Open
+Status: Bogus
Spaces are not allowed in elements' id attributes. You can complain to
authors of HTML specification if you don't like this fact.


[2011-07-25 06:10:40] eryjus

From the QuickForm2 Tutorial, changed the $id of the form form
'tutorial' to 'test form'. The constructor did not recognize that the
form was submitted. Removed the space and the form works as expected.

Test script:
$form = new HTML_QuickForm2('test form');

$form->addDataSource(new HTML_QuickForm2_DataSource_Array(array(
'name' => 'Joe User'

$fieldset = $form->addElement('fieldset')->setLabel('QuickForm2 tutorial
$name = $fieldset->addElement('text', 'name', array('size' => 50,
'maxlength' => 255))
->setLabel('Enter your name:');
$submit = $fieldset->addElement('submit', null, array('value' =>

if ($form->validate()) {
echo '<h1>Hello, ' . htmlspecialchars($name->getValue()) . '!</h1>';

echo $form;

Expected result:
After changing the name to 'World', I expect to see, "Hello, World!".

Actual result:
The form is displayed as if it was loaded for the first time, even with
all the defaults from the code.


Search Discussions

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppear-bugs @
postedSep 28, '11 at 1:36p
activeSep 28, '11 at 1:36p

1 user in discussion

Borz_off: 1 post



site design / logo © 2022 Grokbase