I am using PHP/Pear HTMLQuickForm and HTMLQuickForm_Controller to do some stuff with HTML-forms. Then I noticed that certain phone numbers would not be displayed even though the data had been loaded correctly.
I boiled it down to the following rather strange phenomenons that have me completely baffled:
$this->addElement('static', null, 'Telefon:', '04556-8978765');
will just show "Telefon:" in Firefox 3.6. In IE8 I see "Telefon: 04556-8978765" as expected.
$this->addElement('static', null, 'Telefon:', '904556-8978765');
displays just "Telefon: 9" in Firefox 3.6 and correctly "Telefon: 904556-8978765" in IE8.
On the other hand
$this->addElement('static', null, 'Telefon:', '099828-67776554');
shows "Telefon: 099828-67776554" in both browsers. So my question is this: What is so special about the string 04556-8978765 that Firefox 3.6 refuses to render it?
And it gets even weirder:
The string 0208-23345 and 02232-12345 have the same problem, but when I prefix them with any other character, then unlike 04556-8978765 they are displayed alright.
And it is not as if the missing strings are not rendered at all. On page reload I see them for a short time and then they disappear for good.
Now try to guess the result of
$this->addElement('static', null, 'Telefon:', '04556-8978765');
$this->addElement('static', null, 'Telefon:', '04556-8978765');
Right, it is not
Telefon: 04556-8978765
Telefon: 04556-8978765
as expected, but rather
Telefon:
Telefon: 04556-8978765
Can anybody make any sense of this?