Sunday, April 23. 2006Canoe Camping Top 40
While discussing options for a new kayaking "expedition," my paddling buddy Brian told me about this website: Canoe Camping Top 40. I didn't count to make sure there are forty listings, but there are a lot, and each comes with a good description of the river, the camping, and has links to books, outfitters, water gauges, and more.
I've only paddled on the Edisto and Suwannee from their list; I guess I have a lot more to try! Currently we're looking at maybe doing the Green in Kentucky or the Buffalo in Arkansas. Unfortunately their website is an AOL-member site, and can be pretty slow. Someone get these guys a webhost! Wednesday, April 12. 2006Paris Mountain Hike
I've been busy lately so my trip writeup and photos got delayed. This is my story of a hike on March 30, 2006.
I had to get the car serviced in Greenville, so I thought it would be a good opportunity to do some more hiking. Paris Mountain State Park is just north of the city and features a few strenuous trails. A last-minute tuneup for the next week's Smoky Mountains backpacking trip. I picked the Sulphur Springs Trail, a loop trail of about 4 miles, and the longest of the single trails in the park. I intentionally packed more than I needed for a day hike to give my legs more work. As I geared up in the parking lot, a group of elementary school kids were sitting in the picnic area, listening to their teachers. One of the kids apparently began vomiting and the whole group scattered. I decided to move out too. Shortly after the trailhead I came to Mountain Creek. A snake crossing the creek caught my eye and slithered out on the far shore. I crossed the bridge, expecting the snake to be gone, but it was there on the bank, possibly chilled from the cold water. It sat patiently while I photographed. It was apparently a northern brown snake (Storeria dekayi), or possibly an "intergrade" with the midland brown snake. I continued up the trail and soon had to clear off the trail for a few dozen elementary kids walking down the trail with a park ranger and a few chaperones. My hike carried me uphill along the creek, and by and by I reached an old stone dam, maybe 30 feet high. Next to the dam is a cylindrical castle-style enclosure which contains some rusty water-valve hardware. Apparently the dam was built in the late 19th century to create a water supply for the city of Greenville. The dam contains Mountain Lake, and a walk up a rocky staircase leads you to the top of the dam. The lake was still and beautifully reflected the surrounding mountain laurel and pines. The trail resumed following the creek. Mountain laurel trees lined the banks; it will be gorgeous in a month or two when the trees begin to bloom. I spotted a few wildflowers along the path; the predominant one appeared to be the yellow spearleaf violet (Halesia tetraptera). I also photographed bloodroot (Sanguinaria canadensis), fleabane (Erigeron pulchellus), and what appeared to be an Antennaria species. The trail began to get steep, so I stowed the camera gear and settled in for the climb. The sun decided to break through the clouds at the same time to bump up the workload a notch. The trail crossed the creek a couple times in rocky patches with miniature waterfalls. One had a good place to sit, so I decided it was lunchtime and ate peanut butter and jelly by the rushing water. With a full stomach I returned to the steep trail. I came around a bend and startled a huge grasshopper which flew off and landed on a vine. I hoped it would stay there so I could try to photograph it. Then I noticed it was flailing about, stuck to the vine. I got closer and saw that it had caught its wing on a tiny thorn. After it had a chance to calm down, I was able to carefully slip the wing off the thorn. I was hoping the grasshopper would let me photograph it as a "thank you" but it flew off, high into the trees. As I got higher, the trail lost the creek at some point and came out on a dry area. I was suddenly shocked to see several large houses just off the trail; I realized that I was near the park boundary, and I guess the Greenville suburbs were making the most of the "mountain living." The trail forked near the top at the remnants of an old building. One of the forks was called the Fire Tower trail, so perhaps the building was part of the tower or complementary to it. I remained on the Sulphur Springs Trail and ascended to the highest part of the park, about 1780 feet above sea level. Here it was a dry path along a ridge in the mountain. I came across a pile of scat on the trail. A pair of iridescent green dung beetles (Geotrupes splendidus) were hard at work on it. They made strange scratchy clicking sounds as they moved the pieces around. A pair of dogs suddenly appeared and barked at me while I watching the beetles. Soon their owner arrived and must have thought me crazy for staring at a pile of dung, camera ready. They hiked on while I photographed the bugs a while longer. I walked down the trail another quarter mile and found some mating butterflies (Sleepy Duskywings, Erynnis brizo). A pair sat still briefly on the ground for a photo. The wildlife at the top was pretty good. I also found a small northern fence lizard (Sceloporus undulatus) sunning itself on a fallen tree. I completed the arc of the trail at the top and began to descend in earnest. The path took me to a parking area where a confused mountain biker was trying to figure out which trail to ride. The signs didn't help; most of the maps and writeups noted the trails were only open to bikers on certain weekdays, while another paper mentioned other days. I tried to recommend a trail to him, but I'm not sure what he settled on. I left the parking area and followed the trail down more. This half of the trail turned out to be less interesting. There was no nearby creek for scenery and the wildlife was out of sight save for a few birds. I passed a mountain biker pedaling up the trail, looking serious in his pro jersey and sporty sunglasses. The descent was quick and hard on the knees, but it wasn't long before I had returned to my car at the bottom of the trail. Paris Mountain was a good escape from the nearby city, and a worthy place to get into shape for more hiking. Integrating other sites with PHPBB 2.0.20
In a previous entry, I detailed how I used some code from PHPBB to integrate its session management with my existing website. The idea is to include just enough PHPBB stuff to get PHPBB sessions working, and nothing else. Due to some session code changes introduced in the PHPBB update to version 2.0.20, I had to change the code some. Here is how it looks now:
define('IN_PHPBB', true);
$phpbb_root_path = '/somepath/'; include($phpbb_root_path . 'extension.inc'); include($phpbb_root_path . 'config.'.$phpEx); $ip_sep = explode('.',$_SERVER['REMOTE_ADDR']); $user_ip=sprintf('%02x%02x%02x%02x', $ip_sep[0], $ip_sep[1], $ip_sep[2], $ip_sep[3]); include($phpbb_root_path . 'includes/constants.'.$phpEx); include($phpbb_root_path . 'includes/sessions.'.$phpEx); include($phpbb_root_path . 'includes/db.'.$phpEx); $strSQL = "SELECT config_name, config_value FROM " . CONFIG_TABLE . " WHERE config_name IN ('cookie_name', " . "'cookie_path', 'cookie_domain', 'cookie_secure', " . "'rand_seed', 'session_length');"; if( !($result = $db->sql_query($strSQL)) ) { die('Could not query config information'); } while ( $row = $db->sql_fetchrow($result) ) { $board_config[$row['config_name']] = $row['config_value']; } $userdata = array(); $userdata = session_pagestart($user_ip, PAGE_INDEX); In addition, I had to copy the dss_rand() function out of PHPBB's includes/functions.php file into my startup-script. I think that's preferable to including the whole block of functions, but that's another option. You have also have to modify the message_die() function inside dss_rand() because I'm not including that function. I just used PHP's die() function and only included the text of the error, not the PHPBB specific parameters. Update 2006-07-17: This code is OK for PHPBB 2.0.21 also. Tuesday, April 4. 2006Figuring the Start of the Week with PHP
I have a time keeping utility written in PHP and MySQL. To make a query of the hours recorded so far in a given week, I needed to determine the start date of the week, in the MySQL format of 'YYYY-MM-DD HH:MM:SS'. I had been using this code:
date('Y-m-d H:i:s', mktime(0, 0, 0, date('m'), date('d')-date('w'), date('Y'))); It was successfully giving me midnight on Sunday for my code. Until the change to daylight savings time reared its ugly head (why can't we stay on DST all year?). This week that piece of code gave me '2006-04-01 23:00:00', so the rest of my code decided to include some time from Saturday. I worked through a couple variants, but settled on this replacement: date('Y-m-d', mktime(1, 0, 0, date('m'), date('d')-date('w'), date('Y'))) . ' 00:00:00'; This code adds an hour to the time computation. So the errant Saturday at 11PM gets returned to Sunday at midnight. Other weeks will show 1AM, and the switch back to standard time might show 2AM. Since I always want midnight, the simplest thing seemed to be to drop the time off the date function output entirely and just set it to midnight in the string.
(Page 1 of 1, totaling 4 entries)
|
CategoriesQuicksearchArchivesSyndicate This Blog |