Goodies to Go (tm)
August 9, 2004-- Newsletter #297

By Vince Barnes

Goodies to Go (tm)
August 9, 2004--Newsletter #297

This newsletter is part of the internet.com network.

Featured this week:

* Goodies Thoughts - A Forum Addition
* Q & A Goodies
* News Goodies
* Goodies Peer Reviews
* Feedback Goodies  
* Windows Tech Goodies  
* And Remember This...



Goodies Announcement

The new Beyond HTML Goodies book is now available!


Go beyond the basics and learn how the pros add and use dynamic HTML features and advanced JavaScript techniques. Beyond HTML Goodies demonstrates dozens of new and different features readers can add to their existing Web pages using HTML and JavaScript. The book starts with simple text and image tips, such as adding a clock to a Web page or causing text to appear when the mouse moves over an image. It gradually builds to more complex tricks, including manipulating forms or working with cookies behind the scenes. Throughout the book, readers enjoy Joe's snappy style and "to the point" discussion of each "goody" in the book.





Goodies Thoughts - A Forum Addition

A website that sells doodads can attract a visitor each time they find themselves in desperate need of a doodad. The rest of the time they're unlikely to come and visit the site. That's fine -- you only need them to come when they're ready to buy. There are plenty of websites, however, that would like their visitors to come back again and again, even though they're not wanting to buy anything at the time. Sites supported by advertising are a good example of this. Sometimes, a webmaster would just like to build traffic to their site.

There are many things that can be done to make a site attract a visitor over and over; one great one is to add a forum to the site. A discussion forum, or bulletin board system, to give it its older name, can create a sense of community among the sites visitors as they get to know each other through their discussions. When this happens, they will feel that the site is one of "their places" and will come back more and more frequently.

Of course, there are plenty of other reasons for putting a discussion forum in place, but whatever the reason, one question remains. How do you set one up? Actually, it's more like "how do I set one up? Is it easy? How long will it take? ........" Whoa, Nelly! Let's take a look!

It's easy! You can complete the task, from scratch to live, in about ten minutes. "No way!" you say? "Way!" say I, showing a great mastery of English grammar! Here's how:

There is a fairly large selection of ready made forum packages available of the net. They vary considerable in quality, security and ease of installation and use. There are some written in Perl, some in ASP and some in PHP. When you select one you will need to consider how long it has been around and how many people are using it (both of which go to the likelihood of it being relatively bug free and relatively secure) and, of course, whether or not your hosting platform can support it.

My recommendation? I am very impressed with the very popular phpBB ( http://www.phpbb.com ) I like the fact that it's PHP based - which also means it can be run on almost any platform. It can use a variety of databases for its data, including MySQL 3.2x, PostgreSQL 7.x, Microsoft SQL Server 7/2000 and Microsoft Access (via ODBC.)

Installation is a breeze! Download it, decompress it, move the files into place (if you're going to use Access you have to copy the database from the Install/Schemas directory to wherever you want to keep the database, rename it if desired, and create an ODBC DSN to point to it), make sure the config.php file in the main directory is writable and open the install/install.php page in your browser. Fill in a few parameters and click the install button. Delete the Install and Contrib directories and you're done. That's it -- your forum is up!

If you want to, you can download a "style" or two from the phpbb.com downloads section and use them to change the look and feel of your forum. The instructions are right there too and they are every bit as simple to follow. There are also some other goodies like avatars and emoticons that you can add to your forum to embellish it if you wish. You can also make a few simple changes to further customize the forum - and if you get stuck, or want to know how to do something, guess what -- there's a discussion forum on phpbb.com that's full of knowledgeable and willing helpers!

Quick, easy, secure -- not bad for the money! How much money? It's free! They're Open Source folks!


Thanks for Reading!


- Vince Barnes



Q & A Goodies

Questions are taken from submissions to our Community Mentors. You can ask a Mentor a question by going to http://www.htmlgoodies.com/mentors.



Q. When I run the following script it returns the correct day, year, and time.
However, the month returns as the previous month, e.g. this month, December (12), is shown as November (11) (my computer does have the correct date.) <SCRIPT LANGUAGE="JavaScript"> RightNow = new Date(); document.write("Today's date is " + RightNow.getMonth()+ "-") document.write(" "+ RightNow.getDate() + "-" + RightNow.getFullYear() + ".") document.write("You entered this Web Page at exactly: " + RightNow.getHours()
+ " hours")
document.write(" "+ RightNow.getMinutes() + " minutes and " +
RightNow.getSeconds() + " seconds")

A. I have run into this before. The solution is to:
1. Add the following code immediately after RightNow = new Date(); in your
newMonth = RightNow.getMonth() + 1; 2. Next change the line that returns the month to:
document.write("Today's date is " +newMonth+ "-") [See also http://www.htmlgoodies.com/letters/214.html - Ed.]

Q. I am new to JavaScript. I have been researching a way to unselect a number of checkboxes once a specific checkbox is clicked and vise-a-versa.

A. Here is a example that I put together for someone else (you could replace the radio buttons with form buttons and it would work the same.)
<title>Check All</title>
function checkall(formid,obj)
if(obj.value=="Check All")
if(obj.value=="Uncheck All")
function onlyone(fldobj)
<FORM NAME="myform">
<INPUT TYPE="checkbox" NAME="ckb" onClick="onlyone(this)"> Checkbox One
<INPUT TYPE="checkbox" NAME="ckb" onClick="onlyone(this)"> Checkbox Two
<INPUT TYPE="checkbox" NAME="ckb" onClick="onlyone(this)"> Checkbox Three
Check All<INPUT TYPE="radio" NAME="chka" VALUE="Check All"
Uncheck All<INPUT TYPE="radio" NAME="chka" VALUE="Uncheck All"
{See also http://www.htmlgoodies.com/letters/199.html - Ed.]

Q. I am sometimes having a problem with software programs that download themselves without invitation. this seems to occur most frequently if I am looking for a piece of music that I can incorporate into my web page. e.g. for photo albums. The most difficult was a program called gator or something similar. It made such a fuss with my firewall software that I ended up having to re format my hard disk. No uninstall program came with this invasive software. The program was like a large virus. It was everywhere. Needless to say, I try to be very careful about what I search for, but I wonder if there is some software that I can obtain to prevent trash like this from invading my computer. Just so you know, I have received help from the mentor community in the past and have always found it to be all the right stuff.

A. I am not sure if this is what you need but it may help:
This is a free application that will allow you to monitor and stop applications from loading onto your computer. It will also search for any on your machine and delete them.
[See also the lead piece in this newsletter in the archive:
http://www.htmlgoodies.com/letters/232.html - Ed.]

Q. Is there a way of centering a picture or text in the middle of the page, compared to <center> which puts it only on top?

A. Below is the code needed to center text on the page. If you are using a nested table or have other cells in a table and you want it in the middle you can add this to the cell tag:
"vAlign=middle". That sets the vertical alignment to the middle of that cell.
<div align="center">
<table border="1" cellpadding="0" cellspacing="0" width="100%" height="100%">
<td width="100%" align="center">
<center>This is centered on the page.</td>
[There's more about alignment here:
http://www.htmlgoodies.com/tutors/align.html - Ed.]

Q. I have copyrighted pictures on my website. I have disabled the right-click, so no one can save the picture that way, but then there's that LOVELY little Windows XP toolbar that pops up that allows you to save from there. Can you
help me get this toolbar disabled?

A. By Windows XP toolbar, do you mean the browser toolbar? Yes, it's possible to load a window without it, though not remove it from the current window. Even then, the keyboard shortcuts will still work, and there are other ways around it too. Not only are you fighting a hopeless battle using technical means to make saving images tough, but as someone who uses the right click menu frequently I always resent having it taken. It's not good to annoy your visitors. Since technical means won't work, try two non-technical protections. One is to put a big copyright notice over the graphic. The other is to display just a small version on the web site, and ask anyone who wants the bigger version to contact you. Otherwise, the only way to prevent copying is to not put an image on the web at all.

Q. This is what I want to do:
With one slight difference. I don't want a form button. I want it to literally appear as a link, in such a way that I can have mouse over effects and such. Is this possible?

A. You would use the same event to do it with a text link like this:
<a href="#" onClick="parent.frames[1].location='zippy5.html';
parent.frames[3].location='zippy7.html';">Click Me</a>
You could also create a function and then have the text link perform that
function like this:
<script type="text/javascript">
function DoIt()
Then the link:
<a href="javascript:DoIt()">Click me</a>
<a href="#" onClick="DoIt()">Clickme</a>
If you do go the function route it would be better to pass the pages you want to load in each frame to the function so that you could use it for multiple links like this:
<script type="text/javascript">
function DoIt(page1,page2,page3)
Your link would look like this:
<a href="#" onClick="DoIt
A second link then like this:
<a href="#" onClick="DoIt






News Goodies

Critical Bug Found in AOL's AIM
[August 9, 2004] A specially crafted AIM away message could put users at risk of PC takeover.

Click here to read the article




Google and Yahoo Patch Up Their Differences
[August 9, 2004] On the eve of Google's IPO, the company issues 2.7 million shares to its rival.

Click here to read the article


Microsoft Shares Connectors
[August 9, 2004] Businesses using WSRP can exchange applications with Redmond's collaboration software and portal courtesy of three new free tools.

Click here to read the article




ISO Blesses X3D
[August 9, 2004] In a unanimous vote, ISO ratifies X3D, allowing 3D data to be rendered as a service across networks.

Click here to read the article




Search Spend to Double by 2009
[August 9, 2004] With the increase in revenue comes a decrease in the compound annual growth rate.

Click here to read the article



Laying a Virtual Foundation for a Global Telco
[August 9, 2004] What do you get when you combine a voice consulting company, an integrator, and a voice technology company? VoIP, Inc.

Click here to read the article




Microsoft's XP SP2 Arrives
[August 6, 2004] UPDATED: The security centric update is released to manufacturing. Now, the really hard part begins.

Click here to read the article



Storage Vendors Eye Linux Market
[August 6, 2004] Storage vendors continue to eye the Linux market, if vendor announcements at this week's LinuxWorld conference is any indication.

Click here to read the article




Trojan Horse Charges PDAs
[August 6, 2004] UPDATED: First known backdoor attack on handhelds probably written by Russian virus coder.

Click here to read the article



What Users Want in IE Upgrade
[August 6, 2004] FEATURE: There's a hive of activity at Redmond around Internet Explorer. If version 7.0 is on tap, what improvements can we expect?

Click here to read the article






Goodies Peer Reviews


Every week a site is selected for review. Each week, reviews of the previous week's selected site are chosen for publication on the HTML Goodies website.


The current week's selected site is published in Goodies To Go and in the Peer Reviews section of the website.  Current contact email addresses for submitting your site and for submitting reviews are published in Goodies To Go.

If you would like to have your site reviewed, sign up for the Goodies To Go newsletter in the Navigation Bar on the left side of this page. 

For full details about this program, see http://www.htmlgoodies.com/peerreviews




Feedback Goodies

Did you ever wish your newsletter was an easy two way communications medium? Ploof! It now is!
If you would like to comment on the newsletter or expand/improve on something you have seen in here, you can now send your input to:


We already receive a lot of email every day. This address will help us sort out those relating specifically to this newsletter from all the rest. When you send email to this address it may wind up being included in this section of the newsletter, to be shared with your fellow readers. Please don't send your questions to this address. They should be sent to our mentors: see http://www.htmlgoodies.com/mentors/

For those who are missing Peer reviews: we are once again revising the Peer review program in the hopes of creating a workable solution. The current plan is to move the new Peer Review pages into place in the new year. All those who have been selected for reviews in the past will be featured in the new pages. The new method will make it much easier for your peers to provide feedback and much easier for us to handle the publication side of things. "Watch this space!" It's coming soon!!

Thanks again for all your feedback!



Windows Tech Goodie of the Week:

Connectable Web Parts in SharePoint Portal Server 2003 - Part 1


Most default SharePoint Server Web Parts can be connected across organizations. The first article in this series explains how to connect existing Web Parts using the connection interface classes in the SharePoint architecture.

*** AND ***

Flex Table ASP Sample Code


Usually when you design a page, you're the one that has to decide what a data table will look like, but what if you want to give your users some options? This neat little sample script allows users to select how many columns and rows the table should have and displays the table accordingly. It even automatically adds paging if there's more data then it can display within the user's selected table size



And Remember This . . .

On this day in...

1969 Manson and Followers Start Murder Spree

On this date in 1969 five people in the home of film maker Roman Polanski were murdered by the "Manson Family", Charles Manson and his followers. The five included Polanski's wife, Sharon Tate, who was pregnant with their child at the time, and coffee heiress Abigail Folger. Two days later, they killed Leno and Rosemary LaBianca in their home. At both crime scenes, the murderers wrote messages on the walls using the victims' blood. Some of those murdered were shot, while others were stabbed to death. Manson had previously been
convicted of murder and had served a long sentence in prison, being released at the age of 33 in 1967. Manson convinced his hippie followers that a war between blacks and whites was about to start and that it was their duty to kill certain prominent white people in a way that would implicate black radicals and thereby instigate the war. Manson claimed to be validated by the Beatles' White Album, and in particular the song "Helter Skelter". Manson was found guilty and sentenced to death, but in 1972 his death sentence was invalidated by the Supreme Court. He remains in prison today, with no indication that he will ever be released on parole.

Today was also the day that in: 1638 Dutchman Jonas Bronck became the first European settler in The Bronx, New York; 1673 The Dutch recaptured New York City from the English (renamed it New Amsterdam); 1786 the first ascent of Mont Blanc in the Alps; 1842 the border between the US and Canada was established by the Webster-Ashburton Treaty; 1854 Henry David Thoreau published "Walden"; 1930 Betty Boop dibuted in Max Fleischer's animated cartoon Dizzy Dishes; 1942 Indian nationalist Mohandes K. Ghandi was arrested by the British; 1965 Singapore gained independence from Britain; 1972 Rockwell received a contract from NASA to build the Space Shuttle; 1974 Richard Nixon resigned his presidency, and Gerald Ford became the 38th US President; 1976 the USSR launched Luna 24, the last lunar mission (so far) from Earth; 1988 the day after 8/8/88 New York Lottery's daily number was 888; 1992 the 25th Olympic Games closed in Barcelona;

Born today were: in 1593 English author Isaac Walton ("The Compleat Angler"); 1913 singer Harry Mills; 1927 MIT AI computer scientist Marvin Minsky; 1927 English actor Robert Shaw; 1938 Australian tennis star Rod Laver; 1944 actor Sam Elliot; 1957 actress Melanie Griffith; 1958 actress Amanda Bearse; 1963 singer Whitney Houston; 1966 actor Pat Petersen; 1972 actress Elizabeth Vassey;



Thanks for reading Goodies to Go!


Archive Home Page.

  • Web Development Newsletter Signup

    Invalid email
    You have successfuly registered to our newsletter.
Thanks for your registration, follow us on our social networks to keep up-to-date