Low End Mac Reader Specials

TypeStyler For Mac OS X is Now Shipping! Download The Free Fully Functional 60 Day Tryout at www.typestyler.com

OWC: Get the Right Memory for Your Mac Top Quality, Competitive Price, Lifetime Backed Free Expert Support + Installation Videos too! MacBook & mini 8GB, iMac 16GB, Mac Pro up to 32GB. Click here

Poker Mac Don't install Parallels to play poker online! Poker Mac will show you how to download and install a native Mac poker application such as Full Tilt Poker Mac.

Laptop Hardware Provided by TechRestore - Overnight Mac & iPod Repairs.

Compare products like desktop computers, apple laptops, apple macs, and LCD Monitors side by side! All the information and reviews to make the best purchasing decision for new mobile phones, sat nav systems, or MP3 players. The Ciao online shopping community makes searching products easy for you.

Low End Mac's Online Tech Journal

Testing and Making Your PHP Work

Website Automation with PHP and MySQL, Part 5

Dan Knight - 2002.04.29

Last time we coded our PHP to work with our MySQL database and call up a different Mac of the Day each day.

Testing

After all that, it should have worked the first time - and it did.

Of course, that wasn't good enough. We'd created a full HTML page that worked, but we needed to be able to call this up from various pages on the site. test.html became test.txt, a file that would be called via Server Side Include - and then it didn't work any more.

Brian <http://brkn.net/> and I put our heads together, renamed the file test.php, called it that way, and it worked. On our server, you apparently have to make it part of the main HTML file or call it up in a file with the .php extension.

Then we tried to call the .php file from within a .txt file. We discovered that our server doesn't want to run .php files nested within include files. We'd have to modify the code on all the pages linking to the Mac of the Day to call in first a .txt file, then our new .php file, and then a closing .txt file.

That worked.

Adapting

The next step was to create a database for the email list of the day. The biggest difference here is that our list contains both Low End Mac email lists and a whole bunch run by The Macintosh Guy of Portland, so we'd need to use a full URL in the database. After creating the Mac of the Day, this was pretty trivial.

We also link to the Mac of the Day and the List of the Day in the navigation bar on the right side of almost every page on the site. Here we don't include the long text description, so we modified our code to look like this:

<?php
$host = "sqlserver.lowendmac.com";
$username = "MyName";
$password = "MyPassword";
$connection = @mysql_connect($host,$username,$password);
mysql_select_db(lem_mod,$connection);
$today = round((date(U) + 32400) / 86400);
$mod = $today % 89;
$query = mysql_fetch_array(mysql_query("select * from mod where id = '$mod'"));
echo "<B><BR>Mac of the Day</B><BR>&nbsp;<A HREF=/$query[link]>$query[model]</A>";
$lod = $today % 38;
$query = mysql_fetch_array(mysql_query("select * from lists where id = '$lod'"));
echo "<B><BR>List of the Day</B><BR>&nbsp;<A HREF=\"$query[link]\">$query[listname]</A><BR>";
?>

Pretty trivial, but we ran into the same problem we'd had with the Mac of the Day bullet list - it had to be called in as a .php file. This became very time consuming, as we have thousands of pages on the site that used the menu.txt navigation file. In every single instance, we would have to replace that Server Side Include call with calls to a .txt file, a .php file, and another .txt file.

Using BBEdit Lite, that was also pretty trivial - but uploading thousands of changed pages probably took 3-4 hours. I hope we never have to go through that again.

It Just Works

So now pretty much every page on the site makes a couple of PHP calls to our MySQL database - once to display the Mac of the Day and then to display the Email List of the Day. Day in, day out the server automatically changes this sometime after midnight in Silicon Valley - even on weekends, even on holidays, even if I go on vacation.

And isn't that the whole point of computers, automating tedious tasks?

Next up: Houston, we have a problem. LEM

Recent Online Tech Journal Columns

Links for the Day

Recent Content on Low End Mac

Recent Deals

About LEM | Support | Usage | Privacy | Contacts

Custom Search

Amazon.com

Navigation

Used Mac Dealers
Apple History
Video Cards
Email Lists

Favorite Sites

MacSurfer
MacMinute
MacInTouch
MyAppleMenu
InfoMac
Macs Only!
The Mac Observer
Accelerate Your Mac
RetroMacCast
PB Central
MacWindows
The Vintage Mac
   Museum

DealMac
DealsOnTheWeb
Mac2Sell
ramseeker
Mac Driver Museum
JAG's House
System 6 Heaven
System 7 Today
the pickle's Low-End
   Mac FAQ

Abandonware
   Petition

Mac vs. PC Info

Affiliates

The Apple Store
Mac Connection
B&H
MacMall
TechRestore
ExperCom
Crucial Memory
batteries.com

Advertise

Open Link