This is not a PHP problem, though. Remember, PHP runs on the server, so it doesn't see any <input> tag, any id attribute nor any name attribute. It is the browser that takes the form fields, puts them into HTTP format and then send them to the web server. Therefore, it is up to the browser to decide what to send, and what name to assign it; it is not up to PHP.
Therefore, it will have to be defined in the XHTML specs that form fields should be submitted to the action target through HTTP using the ID attribute. Now, I haven't read the entire XHTML spec, so I don't know if it already has that. And even if it does, it will take a long time till the browsers actually implement that...I mean, look at the date of the HTML4.01 spec - December 1999, and browsers still don't fully support it.
Diego