Home Accessibility Courses Diary The Mouth Forum Resources Site Map About Us Contact
Adding retrospective ALT attributes to IMG

Possible bus-only route to link Dorset Crescent to Daisy Close in MelkshamYou'll find this is article number 2554 on this blog ... with article number 1 written as long ago as 5th August 2004. I didn't plan that I would still be writing five years later (I thought, to be frank, that I would run out of things to say in a few weeks), nor did I properly anticipate the amount of traffic that would arrive at our web site through the archives.

Hindsight is marvellous, and with hindsight I would have included "alt" attributes with each image. That is so that the search engines know what the pictures show, and so that users for whom graphics are not suitable are offered an alternative. But I didn't start off with such attributes and, thousands of posts later, they're difficult to go back and add. However, in the intervening time I have also moved on to hold newly added images in a database, and as well as the data, each row includes a description which *has* been updated over the years to say what the picture's about.

So the archives - which you can access via our archive pages or via our global index - will not include that alternative text tag - going right back through all the images that are in the database.

The code is in PHP, of course ... and the "headline code" that's within the archive generator is as short as:

$ret = preg_replace('/<img\s+(.*?)>/e',
  "'<img '.add_alt('\\1').'>'",
  $row[entry_text]);


That, though, is just a half of the story - the add_alt function that is called on each match looks something like this:

function add_alt($attribs) {
if (preg_match('!alt=!',$attribs)) {
  $rval = $attribs;
} else {
  if (preg_match('!src="?http://www.wellho.net/pix/(\S+)!',$attribs,$matches)) {
    $name = trim($matches[1],'"');
    $rs = @mysql_query ("select filename, descriptor from im_library where filename = \"$name\"");
    $dbk = @mysql_fetch_assoc($rs);
    $nst = "";
    if ($dbk) {$nst = htmlspecialchars($dbk[descriptor]);}
    $rval = "$attribs alt=\"$nst\"";
  } else {
    $rval = $attribs;
  }
}
return ($rval);
}


If you're wondering what on earth the picture at teh top of this article is, and you view source on my daily blog ... you won't be given much of a clue. But if you have a look at the archive here, then the ALT tag will give you, and the search engines, the clues you're likely to be seeking.





Is it still worthwhile, five years on, me writing these tecnical tips? Yes ... I have just been reviewing my user feedback and here are some of the recent unedited comments made:

REALLY A FANTASTIC ARTICLE

Very good explainaiton. Simple and to the point..

Well,it is working good,Thanks for your great work... Thanks Ramakrishnan

I really got helped. These are pure basics of joining which are base of database.

perfect explanation. I can't believe it's that easy. Thank you!

Thanks a lot for the info.Really recommandable job done.

(written 2009-12-28)

 
Associated topics are indexed under
W504 - Web and Intranet - Not Just Text
  [3133] An image from a website that occasionally comes out as hyroglyphics - (2011-01-14)
  [1806] Dealing with overhead cables in a photograph - (2008-09-21)
  [1749] Using server side and client side programming together - (2008-08-11)
  [1618] A small picture does not always cut it! - (2008-04-21)
  [847] Image maps for navigation - a straightforward example - (2006-08-28)
  [665] PHP Image viewing application - (2006-04-01)
  [553] Keep that image small - (2006-01-03)
  [351] Is photoajustment an addiction? - (2005-06-18)

A301 - Web Application Deployment - XML, DTD, XSLT, XHTML and More
  [2378] Handling XML in Perl - introduction and early examples - (2009-08-27)
  [2246] What difference does using the XHTML standard really make? - (2009-06-18)
  [1901] XML, HTML, XHTML and more - (2008-11-23)
  [1050] The HTML++ Metalanguage - (2007-01-22)
  [653] Easy feed! - (2006-03-21)


Back to
On a short walk from home
Previous and next
or
Horse's mouth home
Forward to
Bookkeeping
Some other Articles
Happy new decade - and course and hotel prices for 2010
Rail Campaign - response to core consultation
Railway Station Survey - please complete today or tomorrow
Bookkeeping
Adding retrospective ALT attributes to IMG
On a short walk from home
Web site traffic - real users, or just noise?
Perl and the Common Gateway Interface - out of fashion but still very useful?
Do not copy and paste code - there are much better ways
Christmas Day ...
3603 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73 at 50 posts per page


This is a page archived from The Horse's Mouth at http://www.wellho.net/horse/ - the diary and writings of Graham Ellis. Every attempt was made to provide current information at the time the page was written, but things do move forward in our business - new software releases, price changes, new techniques. Please check back via our main site for current courses, prices, versions, etc - any mention of a price in "The Horse's Mouth" cannot be taken as an offer to supply at that price.

Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).

You can Add a comment or ranking to this page

© WELL HOUSE CONSULTANTS LTD., 2012: Well House Manor • 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01144 1225 708225 • FAX: 01144 1225 899360 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho

PAGE: http://www.wellho.net/mouth/2554_Add ... o-IMG.html • PAGE BUILT: Fri Feb 3 14:16:04 2012 • BUILD SYSTEM: wizard