Rasmus Lerdorf's "Do you PHP" talk on our Geek Cruise last October was brilliant - I heard so much about what's behind PHP and how its originator intends it to be used that it give me a real strong understanding of best practise - you'll find
further details availble here and elsewhere on this site.
Python is a superb language with a different target user base / footprint to PHP. From time to time, the footprints overlap and I find myself putting Python applications on the Web from time to time. Using the best of both worlds - the strengths and knowledge of both PHP and Python, you can put together some superb "Python on the Web" applications. For training purposes, I've put a script onto our web site - you can run it through
this link and link to
the source (it's hsapp2.py in the course examples) as well.
The Python application looks simple - but all the ingredients you'll need are there ... picking up information from forms, sticky fields, sessions, session cart tidy ups, template files and the rest ... all within just a few K of code. And the application is well designed so that it can be easily reused, updated, maintained and extended. I've just finished writing a 10 page description of this application to be included in our
public Python course, but that's a fairly intensive three days and there won't be much time to go through the details of what, for Python, is a bit of a specialist area. If you're booking a
private course we can tailor it to give you full coverage, or you can arrange an
extra day at our training centre to cover it after a public course.
(written 2005-03-06, updated 2006-06-05)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
Y202 - Python on the Web [426] Robust checking of data entered by users - (2005-08-27)
[433] FTP - how to make the right transfers - (2005-09-01)
[903] Pieces of Python - (2006-10-23)
[1745] Moodle, Drupal, Django (and Rails) - (2008-08-08)
[2238] Handling nasty characters - Perl, PHP, Python, Tcl, Lua - (2009-06-14)
[2365] Counting Words in Python via the web - (2009-08-18)
[4089] Quick and easy - showing Python data hander output via a browser - (2013-05-15)
[4404] Which (virtual) host was visited? Tuning Apache log files, and Python analysis - (2015-01-23)
[4536] Json load from URL, recursive display, Python 3.4 - (2015-10-14)
H115 - Designing PHP-Based Solutions: Best Practice [123] Short underground journeys and a PHP book - (2004-11-19)
[261] Putting a form online - (2005-03-29)
[340] Code and code maintainance efficiency - (2005-06-08)
[394] A year on - should we offer certified PHP courses - (2005-07-28)
[563] Merging pictures using PHP and GD - (2006-01-13)
[572] Giving the researcher power over database analysis - (2006-01-22)
[839] Reporting on the 10 largest files or 10 top scores - (2006-08-20)
[896] PHP - good coding practise and sticky radio buttons - (2006-10-17)
[936] Global, Superglobal, Session variables - scope and persistance in PHP - (2006-11-21)
[945] Code quality counts - (2006-11-26)
[1047] Maintainable code - some positive advice - (2007-01-21)
[1052] Learning to write secure, maintainable PHP - (2007-01-25)
[1166] Back button - ensuring order are not submitted twice (PHP) - (2007-04-28)
[1181] Good Programming practise - where to initialise variables - (2007-05-09)
[1182] Painting a masterpiece in PHP - (2007-05-10)
[1194] Drawing hands on a clock face - PHP - (2007-05-19)
[1321] Resetting session based tests in PHP - (2007-08-26)
[1323] Easy handling of errors in PHP - (2007-08-27)
[1381] Using a MySQL database to control mod_rewrite via PHP - (2007-10-06)
[1389] Controlling and labelling Google maps via PHP - (2007-10-13)
[1390] Converting from postal address to latitude / longitude - (2007-10-13)
[1391] Ordnance Survey Grid Reference to Latitude / Longitude - (2007-10-14)
[1482] A story about benchmarking PHP - (2007-12-23)
[1487] Efficient PHP applications - framework and example - (2007-12-28)
[1490] Software to record day to day events and keep an action list - (2007-12-31)
[1533] Short and sweet and sticky - PHP form input - (2008-02-06)
[1623] PHP Techniques - a workshop - (2008-04-26)
[1694] Defensive coding techniques in PHP? - (2008-07-02)
[1794] Refactoring - a PHP demo becomes a production page - (2008-09-12)
[2199] Improving the structure of your early PHP programs - (2009-05-25)
[2221] Adding a newsfeed for your users to a multipage PHP application - (2009-06-06)
[2430] Not just a PHP program - a good web application - (2009-09-29)
[2679] How to build a test harness into your PHP - (2010-03-16)
[3539] Separating program and artwork in PHP - easier maintainance, and better for the user - (2011-12-05)
[3813] Injection Attacks - PHP, SQL, HTML, Javascript - and how to neutralise them - (2012-07-22)
[3820] PHP sessions - a best practice teaching example - (2012-07-27)
[3926] Filtering PHP form inputs - three ways, but which should you use? - (2012-11-18)
[4069] Even early on, separate out your program from your HTML! - (2013-04-25)
[4118] We not only teach PHP and Python - we teach good PHP and Python Practice! - (2013-06-18)
[4326] Learning to program - comments, documentation and test code - (2014-11-22)
[4641] Using an MVC structure - even without a formal framework - (2016-02-07)
[4691] Real life PHP application using our course training MVC example - (2016-06-05)
Some other Articles
Dress for trainingConventional restraints removedWhat and why for the epochDifficulties with a trolleyCrossfertilisation, PHP to PythonTapping in on resourcesPreparation for a day's workHow to get the best from your supplierGiving customers best valueDiverse activities