Displaying Stock Quotes and Timestamps with PHP
Website Automation with PHP and MySQL, Part 13
Low End Mac Reader Specials
Memory To Go Special: MacPro 8 Core Memory 4GB kit $192 / 2GB kit $109. MacBook Pro / MacMini / iMac Intel Core2 DUO 2GB $44 1GB $23--Free shipping available.
Download Typestyler, still the Ultimate Styling Tool for Internet, Print and Video Graphics. Works great in Classic with a Native OS X Version on the way. Free Tryout: www.typestyler.com
LA Computer Company: LA Computer Company: Specials on AppleCare, Apple Displays, MacBooks, iMac's, MacBook Pros, Laptop and iPod accessories and more. Apple A/C Adapters for laptops starting at $25.00 Call 1-800-941-7654 or Click Here.
Other World Computing: OWC Mercury Elite FW800/FW400/USB2/eSATA TOP-RATED Solutions offer High Performance, Reliable storage for all your data storage needs. Industry leading 2yr limited + up to 5yr HD Mechanism Warranty too! Up to 2.0TB(2000GB), 500GB specials from $199.99
Mac users can finally play Party Poker for Mac. Not only that, they can also learn how to play PokerStars for Mac.
Laptop Hardware Provided by TechRestore - Overnight Mac & iPod Repairs.
Compare products like desktop computers, laptops, and LCD TVs side by side! All the information and reviews to make the best purchasing decision for a new cell phone GPS products or MP3 players. The Ciao network makes searching products easy for you.
MacPro Memory 667Mhz With Apple Spec Heat Sink 2GB Kit $ 90 / 4GB Kit $140 / 8GB Kit $278 Click to Maximize your Macs...
Dan Knight - 2002.07.16
We'll start by noting a programming error in the previous column.
Here's the code we first came up with to see if a record existed:
- if ($get_links == "") {die ("no record");}
- echo "<li> <a href=\"/arc/$thisdate.html\">$today in LEM history:</a> $get_links[stories]</li>";
It seemed to work just fine, until the day we didn't have a record. Then it did what the die command is supposed to do - stopped execution. Oops.
Thinking things through, I revised the code. Instead of testing if there was no data, I tested if there was data as follows:
- if ($get_links <> "")
- {echo "<li> <a href=\"/arc/$thisdate.html\">$today in LEM history:</a> $get_links[stories]</li>";}
Voilà, problem solved. And we've had the previous column fixed for some time to reflect the change.
We discovered one more problem: The 80 character field for URLs just wasn't long enough for some of the sites we've linked to. We ended up boosting that field length to 128 characters to play it safe.
Automating the Date Stamp
This week we've made to more automation changes to the site. The first was automating the time stamp that appears on the home page and in a few other spots. I've been manually updating it for years - and sometimes making mistakes.
Also, since we're adding links throughout the day, the manual timestamp was incorrect in no time at all. Time to figure out how to display the time of the most recent link addition.
On our Apple Quicklinks headline news site, this was easy. We have one database of links, so we simply check for the most recently added one, like this:
- $last_added = mysql_fetch_array(mysql_query("SELECT * FROM xlinks ORDER BY timestamp DESC LIMIT 1"));
- $timestamp = $last_added[timestamp];
- echo "<h5>Most recent link added ";
- echo date("h:i a T l, F j, Y", $timestamp);
- echo "</h5>";
The first line selects the most recently added record, and the next line reads the timestamp. Then we display it with the format hour, minute, am/pm, time zone, weekday, month, date, and year.
But on Low End Mac, we have two kinds of links - those on our site and those on other sites. Each is kept in a separate database, so we couldn't do things quite as simply as on the Quicklinks site.
Here's what we came up with for LEM:
- $latestlem = mysql_fetch_array(mysql_query("SELECT * FROM links ORDER BY timestamp DESC LIMIT 1"));
- $latest = mysql_fetch_array(mysql_query("SELECT * FROM xlinks ORDER BY timestamp DESC LIMIT 1"));
- if ($latestlem > $latest)
- {$latest = $latestlem;}
- $latest = $latest[timestamp];
- echo "<h4>Most recent link added ";
- echo date("l, F j", $latest);
- echo " at ";
- echo date("h:i a T", $latest);
- echo "</h4>";
The first line reads the timestamp from the latest local article, and the next line reads the timestamp from the most recently added external link. We compare them to decide which is more recent, then display them as a header 4 like this:
Most recent link added Monday, July 15 at 04:43 pm EDT
And now I don't have to manually post timestamps when I'm adding new content or worry about a manually entered timestamp not reflecting that fact that we may have added content since then.
Apple Stock Tracker
I've been looking for an automated stock tracker for years. Long before I even thought about updating links automatically, I wanted a real time (well, the usual 20 minute delay) stock tracker. I never did find a simple one I could add to the site.
So Monday I spent some time searching the Web, fiddling with some PHP samples, referencing php.net, testing and debugging, tweaking, and finally came up with a nice simple stock tracker that does just one thing: Report the latest trade in AAPL stock.
I found far more than I was looking for on the EvilWalrus Group website - a script by Mukul Sabharwal that does far more than I wanted, right down to displaying graphs.
All I wanted was the current price and how much it had changed during the day, so I had a lot of code stripping to do. Here's what I ended up with:
- $fd = fopen ("http://quote.yahoo.com/d/quotes.csv?s=AAPL&f=sl1d1t1c1ohgv&e=.csv", "r");
- $contents = fread ($fd, 200);
- fclose ($fd);
- $contents = str_replace ("\"", "", $contents);
- $contents = explode (",", $contents);
- echo "<ul><li>Apple stock tracker. Most recent trade: <b>\$$contents[1]</b>. Change: $contents[4]. (Prices delayed up to 20 minutes.)</li>";
The first line opens the AAPL record on the quotes.yahoo.com website and reads it. $contents = str_replace ("\"", "", $contents); goes through the data and strips out quote marks. The next line "explodes" commas, which means it turns every comma into a field delimiter.
The only fields I'm interested in are 1 (the last traded price) and 4 (how much Apple stock has moved up or down today). And the LEM home page now displays that information - generated each time someone visits the home page.
One less thing to update manually, and one more thing to put on
the Apple Quicklinks site when I have a chance.
Recent Online Tech Journal Columns
- Apple's AAUI ethernet connector, 09.04. From 1991 through 1995, Apple used a proprietary ethernet connection. Why they created AAUI and where to find adapters.
- PowerPC G5: Apple's last fling with PowerPC architecture, 05.24. Teaming up with IBM, Apple adopted the PowerPC G5 in 2003 - and phased out the last G5 Power Mac three years later.
- The PowerPC G4: From 350 MHz to 2.0 GHz, 05.24. AltiVec and dual processor support made the G4 a big improvement over the earlier G3 processor.
- More in the Online Tech Journal index.
Recent Content on Low End Mac
- Apple's eMate still a great tool in the classroom, Tommy Thomas, Welcome to Macintosh, 05.09. How one teacher equipped his classroom with eMates with his own money - and plans to keep using them as long as possible.
- $199 iPhone coming?, iPod not a Walkman, crosswalk danger, iPods taking over cars, and more, iNews Review, 05.09. Also the iPhone is a second-rate phone, iPhone 2.0 may introduce handwriting recognition, Kensington battery pack and chargers, new iPhone apps, and more.
- Best Power Mac G4 deals, Low End Mac Deals, 05.09. Used Cube, $479; 400 MHz PCI, $70; 450 AGP, $105; 733 DA, $150; 867 QS, $200; 1 GHz, $250; 450 dual, $295; 1 GHz dual, $400; 1.42, $600; more.
- Best 15" MacBook Pro deals, Low End Mac Deals, 05.09. Used 1.83 GHz Core Duo, $1,100; 2.16, $1,295; refurb, 2.2 Core2, $1,449; 2.4 Penryn, $1,699; 2.5, $2,149; new 2.2, $1,525 after rebate; 2.4, $1,685 a/r; more.
- MacBook sales explode, MacBook Air reviews, several new hard drives, and more, The 'Book Review, 05.09. Also silver-zinc batteries may outlast lithium-ion, Bell Aliant bundling MacBook with Internet access, notebook drives benchmarked, bargain 'Books from $150 to $2,699, and more.
- Best iPod touch deals, Low End Mac Deals, 05.09. Refurb 8 GB '08, $249; 16 GB '07, $329; '08, $349; new 8 GB '07. $269; '08, $280; 16 GB '07, $330; '08, $369; 32 GB, $475.
- More G4 upgrade advice, secure disk wipes, 500 MHz iMacs with Tiger in action, and more, Dan Knight, Low End Mac Mailbag, 05.09. The importance of securely clearing your hard drive before you pass on your Mac, Pismo and closed lid mode, G3 iMacs in the classroom, and more thoughts on upgrading G4 Power Macs.
- Apple tops in tech support, Penryn iMacs and Psystar Open Computer reviewed, and more, Mac News Review, 05.09. Also the iMac philosophy, OpenOffice 3.0 going Mac, MozyHome backup comes to Macs, weather in the Dock, and more.
- 140 million copies of Vista sold (yawn), Frank Fox, Stop the Noiz, 05.09. It sounds like a lot, but over 85% of Windows users are staying away from Vista. 20% of Mac users have embraced Leopard in one-third the time.
- Mac of the Day: Macintosh LC, Oct. 1990 - only 3" tall, the LC was the least expensive color Mac in 1990.
- List of the Day: Jaguar List is for anyone using Mac OS X 10.2.x.
- May 12 in LEM history: 99: Is Apple missing the boat? - 00: PowerBook history - Frankenstein Power Mac - 03: Beige Power Mac G3 - Is a 5400 worth buying? - Upgrades for the tray-loading iMac - Quiet computing - 04: Windows stability: Nothing changes - Broadband Internet access: Picking the right speed - 06: The future of PowerPC Macs in the Intel era - Setting up a 68040-based Mac media center - Mac mini Core Duo upgrades
- Why one Mac user chose BlackBerry over iPhone, Andrew J Fishkin, Best Tools for the Job, 05.08. The advantages of OS X, Safari, Mail, and iSync don't outweigh the familiarity of BlackBerry, its excellent software, easily replaceable batteries, and a camera-free option.
- 500 MHz iMac with Panther great for Internet, watching video, and more, Carl Nygren, My Turn, 05.08. At $65 with upgraded RAM and a bigger hard drive, it was too good to pass up, and it works very nicely with Mac OS X 10.3.
- Boomerang: The Blue and White Power Mac G3 that kept coming back, Charles Webb, The Webb Chronicles, 05.08. Over its nine-year lifespan, this Power Mac had at least five owners before it finally gave up the ghost.
- Best Intel iMac deals, Low End Mac Deals, 05.08. Used 17" 1.83 GHz, $699; 20" 2.16 Core2, $885; refurb 20" 2.16, $949; 2.4, $1,099; 24" 2.16, $1,199; 2.4, $1,399; 2.8, $1,599; Penryn from $1,049 after rebate.
- Best 17" PowerBook G4 deals, Low End Mac Deals, 05.08. Used 17" 1 GHz, $790; 1.33 GHz, $850; 1.5 GHz, $859; 1.67 GHz, $889.
- Best Mac OS X 10.5 'Leopard' deals, Low End Mac Deals, 05.08. Mac OS X 10.5.1 single user, $99; 5 users, $139; 10.5 Server, 10 users, $450; unlimited, $899.
- More links in our archive.
Go to the Online Tech Journal index.
About LEM | Support | Usage | Privacy | Contacts



