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 14:48 and the date is 2nd October 2023. It is a Monday. [[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)
Some other Articles
One Cheer for Local Democracy - Asda in MelkshamWalk to BowerhillLearning to program as a part of your jobSite24x7 prowls uninvitedKeeping PHP code in database and running itCooking bodies and URLsBitter coldMichelleLooking forward, in Melksham, in 2009From spam to mod_alias - finding resources