On 1 July 2010 14:38, Bob McConnell <rvm@xxxxxxxxx> wrote: > From: Adam Richardson > >> On Wed, Jun 30, 2010 at 9:16 PM, David Mehler <dave.mehler@xxxxxxxxx> > 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