Home Accessibility Courses Twitter The Mouth Facebook Resources Site Map About Us Contact
 
For 2023 (and 2024 ...) - we are now fully retired from IT training.
We have made many, many friends over 25 years of teaching about Python, Tcl, Perl, PHP, Lua, Java, C and C++ - and MySQL, Linux and Solaris/SunOS too. Our training notes are now very much out of date, but due to upward compatability most of our examples remain operational and even relevant ad you are welcome to make us if them "as seen" and at your own risk.

Lisa and I (Graham) now live in what was our training centre in Melksham - happy to meet with former delegates here - but do check ahead before coming round. We are far from inactive - rather, enjoying the times that we are retired but still healthy enough in mind and body to be active!

I am also active in many other area and still look after a lot of web sites - you can find an index ((here))
Keeping PHP code in database and running it

The software for these articles lets me enter HTML and keeps it in a database. If I want to add PHP, that gave me a problem as the data (HTML) was simply read from the database and passed to my client's browser without being parsed for <?php to ?> sections. But problem solved in two different ways!

The current page is generated as I write the blog, and is saved on the server as a regular .html file. We have simply instructed our server that in this area, when serving files ending in .html it is to put them through the PHP interpreter - that's a line like
AddType application/x-httpd-php .html
in my .htaccess file.

Our archive pages are not stored- they're not called up so often, so we can afford to generate them on the fly. In addition, the menu of "other available articles" changes dynamically as new articles are added - so we cannot store the pages unless we chose to rebuild all 2000 every time an article was added or updated.

Here is the line of PHP that we used on the archive pages to include the HTML within the page:
$bodder = nl2br($row[entry_text]);

When we wish to include PHP in there too, we have a problem - it's going to be passed right to the browser, and as PHP source too. Here is our solution:
ob_start();
eval("?"."> $row[entry_text] <"."?php ");
$yeahz = ob_get_contents();
ob_end_clean();
$bodder = nl2br($yeahz);


a) The use of eval let me actually run the code from the database. However, the output would go straight to the browser which isn't what I want so ...

b) The ob_start buffers the output from the eval, the ob_get_contents returns the data to me from that buffer, and the ob_end_clean deletes the information from the output buffer and turns buffering off. So I have used the built-in facilities to trap the output from the PHP.

Does it work? Yes ... but I do need to check XML feeds as well if I start making heavy use of this. I suspect I need to parse them through PHP - not a big deal. Let me test it. The current time is 15:12 and the date is 29th March 2024. It is a Friday. [[Those sentences should have changed for you to reflect the time on the server when you called it up]].
(written 2009-01-09, updated 2009-01-11)

 
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)
  [2025] Injection Attack if register_globals in on - PHP - (2009-02-04)
  [2274] PHP preg functions - examples and comparision - (2009-07-08)
  [2478] How did I do THAT? - (2009-10-26)
  [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)

H113 - Using MySQL Databases in PHP Pages
  [104] mysql_connect or mysql_pconnect in PHP? - (2004-10-30)
  [515] MySQL - an FAQ - (2005-12-03)
  [572] Giving the researcher power over database analysis - (2006-01-22)
  [581] Saving a MySQL query results to your local disc for Excel - (2006-01-29)
  [647] Checking for MySQL errors - (2006-03-15)
  [666] Database design - get it right from first principles - (2006-04-02)
  [723] Viewing images held in a MySQL database via PHP - (2006-05-17)
  [915] Paging through hundreds of entries - (2006-11-05)
  [937] Display an image from a MySQL database in a web page via PHP - (2006-11-22)
  [947] What is an SQL injection attack? - (2006-11-27)
  [1561] Uploading to a MySQL database through PHP - examples and common questions - (2008-03-02)
  [2071] Setting up a MySQL database from PHP - (2009-03-08)
  [2259] Grouping rows for a summary report - MySQL and PHP - (2009-06-27)
  [2320] Helping new arrivals find out about source code examples - (2009-08-03)
  [2432] Using print_r in PHP to explore mysql database requests - (2009-10-01)
  [2447] MySQL stored procedures / their use on the web from PHP - (2009-10-10)
  [2561] The future of MySQL - (2010-01-03)
  [2628] An example of an injection attack using Javascript - (2010-02-08)
  [3035] How to display information from a database within a web page - (2010-11-07)
  [3455] MySQL, MySQLi, PDO or something else - how best to talk to databases from PHP - (2011-09-24)
  [4378] What FGW passengers want to talk about / and PHP programming to find out - (2015-01-01)
  [4483] Moving from mysql to mysqli - simple worked example - (2015-05-03)


Back to
Cooking bodies and URLs
Previous and next
or
Horse's mouth home
Forward to
Site24x7 prowls uninvited
Some other Articles
One Cheer for Local Democracy - Asda in Melksham
Walk to Bowerhill
Learning to program as a part of your job
Site24x7 prowls uninvited
Keeping PHP code in database and running it
Cooking bodies and URLs
Bitter cold
Michelle
Looking forward, in Melksham, in 2009
From spam to mod_alias - finding resources
4759 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, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 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., 2024: 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01144 1225 708225 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho

PAGE: http://www.wellho.info/mouth/1983_Kee ... ng-it.html • PAGE BUILT: Sun Oct 11 16:07:41 2020 • BUILD SYSTEM: JelliaJamb