I had great fun putting together yesterday's blog about
My train journey from Melksham, with a whole lot of images in the text rather than real words.
For my first tests, the images sat on the line like this:
which starts to look really ugly once you 've added more that a couple of pictures - so I have fine tuned my "img" tags, adding in both
align="middle" and
"vspace=2" (and, yes, I know ... deprectation warning - should have used style!). I then added
alt="what it is text" to provide a backdrop of desciptive text whould people use various browser facilities to read me properly.
But then I also wanted to provide me with a
"just show me the friging text" option, so I wrapped my images in PHP tags:
< imagestart("tiny_bristol") ?>Bristol< imageend() ?>
and provided thos extra functions
imagestart and
imageend:
<?php function imagestart($wot) {
return (($_REQUEST[txt]=="")?
"<img src=http://www.wellho.net/pix/$wot.jpg align=middle vspace=2 alt=\""
:"") ; }
function imageend() {
return (($_REQUEST[txt]=="")?
"\">"
:""); } ?>
i
Notes
1. The reason to use functions should be glaringly obvious - it saves the need to keep repeating a messy piece of code. Write it once, debug it once, and have it used consistently. But
why two functions? Ah - that's because I want to keep my ALT text outside the tags so that if I run the PHP function
stripslashes on the text, I am left with the keywords correctly. That way, I can help blog feeds and our own other scripts which re-use the blog text or search through it such as
this one to index / report the page properly too.
2. The $_REQUEST[txt] control is the quasi-form element that I am using to control whether the text is show in picture or text form. It's defaulting to pictures, but links on via
<a href="?txt=x">[here]</a>
to the plain text version and back via
<a href="?txt=">[here]</a>
to the version with pictures again.
3. In order to keep PHP code in my Movable Type (Moveabletype) database, I added code that uses functions such as
ob_get_contents to my templates, and I've also ensured that .html URLs are parsed by the PHP interpretter. For details, see
here and
here (written 2009-10-26)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
H312 - PHP - Tips and Techniques [789] Hot answers in PHP - (2006-07-02)
[917] Syntax checking in PHP - (2006-11-07)
[1010] Dates, times, clickable diarys in PHP - (2006-12-28)
[1270] PHP Standalone - keyboard to screen - (2007-07-18)
[1649] Easy conversion - image formats, currencies and distances - (2008-05-21)
[1667] Checking server performance for PHP generated pages - (2008-06-06)
[1684] Two PHP include files to make easy web site indexing and navigation - (2008-06-21)
[1958] PHP - Parse error: syntax error, unexpected $end ... - (2008-12-23)
[1983] Keeping PHP code in database and running it - (2009-01-09)
[2025] Injection Attack if register_globals in on - PHP - (2009-02-04)
[2274] PHP preg functions - examples and comparision - (2009-07-08)
[2981] How to set up short and meaningfull alternative URLs - (2010-10-02)
[4074] A comment on comments in PHP - (2013-04-28)
[4310] Problem ... I want to print a series of numbered forms - (2014-10-05)
[4319] PHP - some quick fixes if scripts have issues, and how to use our support - (2014-11-19)
[4426] FileMaker Day to Unix Time conversion - (2015-02-15)
[4621] The power of scripting - (2016-01-12)
H305 - PHP - Web server configuration [1778] Pointing all the web pages in a directory at a database - (2008-08-30)
[1938] Predictive Load Balancing - PHP and / or Java - (2008-12-13)
[2773] Dynamically watching your web site via a PHP wrapper - (2010-05-21)
[2774] PHP - Object Oriented Design in use - (2010-05-21)
[3143] On time - (2011-01-23)
A603 - Web Application Deployment - Further httpd Configuration [345] Spotting a denial of service attack - (2005-06-12)
[466] Separating 'per instance' data from binaries and web sites - (2005-10-16)
[526] Apache httpd - serving web documents from different directories - (2005-12-12)
[550] 2006 - Making business a pleasure - (2006-01-01)
[631] Apache httpd to Tomcat - jk v proxy - (2006-03-03)
[649] Denial of Service ''attack'' - (2006-03-17)
[662] An unhelpful error message from Apache httpd - (2006-03-30)
[755] Using different URLs to navigate around a single script - (2006-06-11)
[853] To list a directory under httpd on a web server, or not? - (2006-09-02)
[934] Clustering, load balancing, mod_rewrite and mod_proxy - (2006-11-21)
[1009] Passing GET parameters through Apache mod_rewrite - (2006-12-27)
[1080] httpd.conf or .htaccess? - (2007-02-14)
[1121] Sharing the load with Apache httpd and perhaps Tomcat - (2007-03-29)
[1207] Simple but effective use of mod_rewrite (Apache httpd) - (2007-05-27)
[1351] Compressing web pages sent out from server. Is it worth it? - (2007-09-14)
[1355] .php or .html extension? Morally Static Pages - (2007-09-17)
[1377] Load Balancing with Apache mod_jk (httpd/Tomcat) - (2007-10-02)
[1381] Using a MySQL database to control mod_rewrite via PHP - (2007-10-06)
[1551] Which modules are loaded in my Apache httpd - (2008-02-23)
[1554] Online hotel reservations - Melksham, Wiltshire (near Bath) - (2008-02-24)
[1564] Default file (MiMe types) for Apache httpd and Apache Tomcat - (2008-03-04)
[1566] Strange behaviour of web directory requests without a trailing slash - (2008-03-06)
[1619] User and Group settings for Apache httpd web server - (2008-04-22)
[1636] What to do if the Home Page is missing - (2008-05-08)
[1707] Configuring Apache httpd - (2008-07-12)
[1762] WEB-INF (Tomcat) and .htaccess (httpd) - (2008-08-20)
[1767] mod_proxy and mod_proxy_ajp - httpd - (2008-08-22)
[1939] mod_proxy_ajp and mod_proxy_balancer examples - (2008-12-13)
[1954] mod_rewrite for newcomers - (2008-12-20)
[1955] How to avoid duplicating web page maintainance - (2008-12-20)
[1974] Moving a directory on your web site - (2009-01-03)
[2060] Database connection Pooling, SSL, and command line deployment - httpd and Tomcat - (2009-03-01)
[2272] Monitoring and loading tools for testing Apache Tomcat - (2009-07-07)
[2900] Redirecting a page - silent, temporary or permanent? - (2010-08-03)
[3133] An image from a website that occasionally comes out as hyroglyphics - (2011-01-14)
[3449] Apache Internal Dummy Connection - what is it and what should I do with it? - (2011-09-19)
[3635] Parse error: parse error, unexpected T_STRING on brand new web site - why? - (2012-03-03)
[3862] Forwarding a whole domain, except for a few directories - Apache http server - (2012-09-17)
[3955] Building up from a small PHP setup to an enterprise one - (2012-12-16)
[4001] Helping search engines with appropriate 400 error codes - (2013-02-11)
[4307] Identifying and clearing denial of service attacks on your Apache server - (2014-09-27)
Some other Articles
Load balancing with sticky sessions (httpd / Tomcat)Sample code with errors in it on our web sitePantomimes around Melksham - 2009/2010 seasonAccidentally typed ci rather than vi?How did I do THAT?By train ...Tcl - uplevel to run code at calling levelQuick easy and dangerous - automated logins via Tcl / ExpectUsing Tcl and Expect to automate repetitive jobsExploring Old Railways