On 1 July 2010 14:38, Bob McConnell <r...@cbord.com> wrote:
> From: Adam Richardson
>
>> On Wed, Jun 30, 2010 at 9:16 PM, David Mehler <dave.meh...@gmail.com>
> wrote:
>>
>>> Hello,
>>> I've got a php form processing question. I've got a text field like
> so:
>>>
>>> <div>
>>> <label for="txtname">Name*:</label>
>>> <input type="text" name="name" id="name" size="30" value="<?php echo
>>> htmlspecialchars($_POST['name']), ENT_QUOTES, UTF-8; ?>" /> <br />
>>> </div>
>>>
>>> My question is what is the purpose of the id field? I know the name
>>> field is what php references, but am not sure what id is for?
>>
>> Sometimes it's helpful to target a specific element for stylistic or
>> functional purposes, and that's when you'll find an id attribute
> helpful.
>>
>> In your example above, label elements use the id in the 'for'
> attribute
>> (and, speaking to your example, you should have for="name" instead of
>> for="txtname"):
>> http://www.w3schools.com/tags/tag_label.asp
>>
>> In terms of CSS, you can specifically reference the element by it's id
> using
>> the notation tag_name#id_value, and id's have the highest order of
>> specificity (i.e., if you try and style an element by tag name, class,
>> and/or id, the id styles are what will take precedent, all other
> things
>> equal.)
>> http://webdesign.about.com/od/cssselectors/qt/cssselid.htm
>> http://www.stuffandnonsense.co.uk/archives/css_specificity_wars.html
>>
>> In terms of javascript, you can reference the element by it's id by
> using
>> the function getElementById('id_value):
>> http://www.tizag.com/javascriptT/javascript-getelementbyid.php
>>
>> Just remember that a particular id can only occur once on a page
> (another
>> difference between the name attributes in a form, as you could have
> multiple
>> forms on a page and each form could have an input with a "zip" name
> without
>> issue, but that same page could only have one id with the value
> "zip".)
>>
>> That all said, with the advent of javascript data attributes, you'll
> have
>> one more way to target elements for design and functionality:
>> http://ejohn.org/blog/html-5-data-attributes/
>
> If you look at the current HTML 4.01 and XHTML 1.0 specification, you
> will find 'name' is no longer listed as a standard attribute. It is all
> but obsolete and has been replaced by 'id' almost everywhere. They
> actually recommend you put both attributes into tags with identical
> values until your applications can be updated to drop all uses of the
> name attribute.
>
> <http://www.w3schools.com/tags/default.asp>
>

Errr, what? Name is by no means obsolete for forms. Have a look at
http://dev.w3.org/html5/spec/association-of-controls-and-forms.html#attr-fe-name
- it's still in the html5 spec and there's little to no chance of it
going away any time soon.

Relying on w3schools is not ... really advisable.

Regards
Peter


-- 
<hype>
WWW: http://plphp.dk / http://plind.dk
LinkedIn: http://www.linkedin.com/in/plind
BeWelcome/Couchsurfing: Fake51
Twitter: http://twitter.com/kafe15
</hype>

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to