But I didn’t change anything!

The other day I was checking a few of my clients’ sites, something I try to do fairly often. When I got to the Newton Open Studios site I was shocked to discover that all the images were gone.

Now understand that this is a site about artists, so images are its lifeblood. Every artist can upload up to 5 images, and the Home page puts up a random selection of six images every time it’s called. Pretty neat, but awfully barren-looking without images.

I knew I hadn’t touched the site in over a week, and the last time I checked everything worked, so this wasn’t a case of “fix one thing, break another.”

Time for some detective work. All images on the site are resized on the fly by a program called “Phpthumb.” It seemed likely that Phpthumb was having a problem, but what and why? I put up a test page that had nothing but a Phpthumb-generated image, which confirmed my diagnosis (the page was blank) but still didn’t tell me what was wrong.

Hunches are a very useful tool in the web developer’s toolbox, and I had a hunch. I did a search of PHP, phpthumb, and the word “problem.” Bingo! An update to PHP had done me in.

Here’s a short explanation for those of you who are not technically inclined: PHP is a programming language that runs many websites. It supplies a library of common functions that programs running on it can use. As noted above, Phpthumb is a program that runs on PHP and resizes images. One of the PHP functions that Phpthumb uses was removed in the latest version of PHP. Yes, that is a common occurrence. And yes, the hosting service had just updated PHP to the latest version without notifying anyone.

Final solution? The creators of Phpthumb had thoughtfully updated it to account for the PHP change. I downloaded and installed a new version of PhpThumb and all the images returned. Case closed.

Note: This little exercise did not cost Newton Open Studios anything. One of the services you get when CyberArtisans builds your site is our guarantee: if it stops working we fix it – for free.