Goodies to Go ™
August 9, 2004–Newsletter #297
This newsletter is part of the internet.com network.
http://www.internet.com
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.
http://books.internet.com/books/0789727803
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
https://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")
</SCRIPT>
A. I have run into this before. The solution is to:
1. Add the following code immediately after RightNow = new Date(); in your
function:
newMonth = RightNow.getMonth() + 1; 2. Next change the line that returns the
month to:
document.write("Today’s date is " +newMonth+ "-") [See also https://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.)
<html>
<head>
<title>Check All</title>
<SCRIPT LANGUAGE="JavaScript">
function checkall(formid,obj)
{
len=formid.ckb.length
for(i=0;i<len;i++)
{
if(obj.value=="Check All")
{formid.ckb[i].checked=true}
if(obj.value=="Uncheck All")
{formid.ckb[i].checked=false}
}
}
function onlyone(fldobj)
{
alert(fldobj.name)
}
</SCRIPT>
</head>
<body>
<CENTER>
<FORM NAME="myform">
<INPUT TYPE="checkbox" NAME="ckb" onClick="onlyone(this)"> Checkbox One
<BR>
<INPUT TYPE="checkbox" NAME="ckb" onClick="onlyone(this)"> Checkbox Two
<BR>
<INPUT TYPE="checkbox" NAME="ckb" onClick="onlyone(this)"> Checkbox Three
<BR>
Check All<INPUT TYPE="radio" NAME="chka" VALUE="Check All"
onClick="checkall(this.form,this)">
Uncheck All<INPUT TYPE="radio" NAME="chka" VALUE="Uncheck All"
onClick="checkall(this.form,this)">
</FORM>
</CENTER>
</body>
</html>
{See also
https://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:
http://security.kolla.de
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:
https://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.
<html>
<head>
<title>Centered</title>
</head>
<body>
<div align="center">
<center>
<table border="1" cellpadding="0" cellspacing="0" width="100%" height="100%">
<tr>
<td width="100%" align="center">
<center>This is centered on the page.</td>
</tr>
</table>
</center>
</div>
</body>
</html>
[There’s more about alignment here:
https://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:
http://htmlgoodies.earthweb.com/tutors/2atonce.html
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[2].location=’zippy6.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()
{
parent.frames[1].location=’zippy5.html’;
parent.frames[2].location=’zippy6.html’;
parent.frames[3].location=’zippy7.html’;
}
</script>
Then the link:
<a href="javascript:DoIt()">Click me</a>
Or
<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)
{
parent.frames[1].location=page1;
parent.frames[2].location=page2;
parent.frames[3].location=page3
}
</script>
Your link would look like this:
<a href="#" onClick="DoIt
(‘zippy5.html’,’zippy6.html’,’zippy7.html’)">Clickme</a>
A second link then like this:
<a href="#" onClick="DoIt
(‘zippy2.html’,’zippy3.html’,’zippy4.html’)">Clickme</a>
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
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
https://www.htmlgoodies.com/peerreviews
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:
mailto:nlfeedback@htmlgoodies.com
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
https://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!
Top
Windows Tech Goodie of the Week:
Connectable Web Parts in SharePoint Portal Server 2003 –
Part 1
http://www.15seconds.com/issue/040730.htm
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
http://www.asp101.com/samples/flextable.asp
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
Top
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!