Goodies to Go (tm)
March 22, 2004-- Newsletter #277

By Vince Barnes



Goodies to Go (tm)
March 22, 2004--Newsletter #277

This newsletter is part of the internet.com network.
http://www.internet.com
 


Featured this week:

* Goodies Thoughts - Hosting on XP Home
* 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 - Hosting on XP Home


Last week I talked about the possibility of hosting your own website on your own computer when you have a broadband connection. I that regard I also talked about using IIS on your Windows XP machine. A few people, the first being Mark Call (thanks for your note, Mark - your question is being answered here!) wrote to point out that IIS is supported on Windows XP Professional only, not on Windows XP Home. I am so used to using the Pro version that I sometimes forget that there are features that aren't available in the Home version!

All is not lost, however, for those of you wanting to run a web server on your XP Home machine! Today I have two suggestions for you that will help you fill the bill! The first is a small, but very powerful, web server that you can have up and running in minutes. The second is a full featured web server that is currently in use to support a lot of websites, including both small and quite large ones.

Don't let the small size of this one fool you! The Abyss web server, which is put out by Aprelium Technologies in Tunis, Tunisia, is a very capable and stable server. For ease of use, however, it is very hard to beat. If you have never configured a server before, this one will take you minutes to set up and use! (If you've set up lots of servers before, it won't make much difference - this one is easy!)

Aprelium says "Abyss Web Server X1 is a free personal web server available for Windows, MacOS X, Linux, and FreeBSD operating systems. Despite its tiny footprint (for example, the executable file size of the Windows version is less than 112 KB); it supports HTTP/1.1, dynamic content generation through CGI/1.1 scripts, Server Side Includes (SSI), custom error pages, and user access control (HTTP authentication/password protected files)."

And... it has a web based management interface. Life is good! Cruise on over to http://www.aprelium.com/abyssws/  and get yourself a copy. Did you notice that price? "Free" -- I know you can afford that!

The second web server for windows to be mentioned is, of course, Apache. Version 2.0 of Apache is available at http://httpd.apache.org/download.cgi  -- you'll want the "Win32 Binary (MSI Installer)" version.

Apache is very easy to install - just doubleclick the msi after you download it. Apache is a full featured web server - one of the best! With it you will be able to configure and run a web server just like the professionals do. There is, however, a little learning involved. Don't let that put you off though. It is not too daunting a task, and there are plenty of helpful people out there who are very familiar with it and will be very willing to help you, if you need it.

Apache - which is an open source project, producing software of such high quality it's hard to believe it's free -- is very well documented. Check out http://httpd.apache.org/docs-2.0/ and for Windows specific notes there's also http://httpd.apache.org/docs-2.0/platform/windows.html

Whichever of these free products you choose to use, you will be able to provide a self-hosting service that will rival any paid service out there that you might otherwise use. It will also knock the spots clean off those "freebie", ad supported hosting services. Go ahead - take charge!

 

Thanks for Reading!
 

- Vince Barnes

 

Top

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. How do I make a link from a popup window close the popup window and link back to a page of the main web site?

A. To refer back to the window that opened the popup you would use the term "opener". I would suggest that you create a function in your popup to load the page into the main window and then close the popup. The function could look like this:
function LoadPage(linkid)
{
opener.location.href=linkid
self.close()
}
You can then call this function and pass the page you want to load into the "opener" window as a value like this:
<a HREF="#" onClick="LoadPage('mypage.html')">Click Me</a>
or
<a HREF="javascript:LoadPage('mypage.html')">Click Me</a>
The second example might be better because IE5.0 has a problem when you use the "#" sign to void the link. You can also reference function in the "opener" window from the popup by prefacing the function name with the term "opener" like this:
opener.function_name()
As you can see you can reference just about anything in the main window as long as you preface it with "opener".




Q. When there is no reason to scroll left/right, the scrollbar on the bottom disapears. But even if I don't need to scroll up/down, there is a scroll bar on the right side. How do I get rid of the scroll bar on the right side of the page, but only if there is no need for it?

A. The vertical scrollbar also disappears when the page is not longer than the window. If it is longer, then the scrollbar appears, so what must be happening is your page is too long to fit entirely within your window.




Q. I need to change the indent length on a nested unordered list. Any ideas?

A. There are multiple ways, so I refer you to these tutorials:
http://htmlgoodies.earthweb.com/tutors/lists.html
http://htmlgoodies.earthweb.com/beyond/css_lists.html




Q. I have a frame on the left and want to have links to pages that show up in the frame on the right. They just show up on the left. How do I fix this?

A. To target between frames, add target="frame_name" to the link tag. For example, if you have a frame named "main" where you want the new page to load, you would add target="main" to the link.
-- Also see http://www.htmlgoodies.com/articles/framesandspiders1.html





Q. I have windows ME trying to save a file as .html but it isn't saving as an html file. Do you have any ideas?

A. I'm guessing you're using Notepad to write your file, and Notepad puts a txt extension on everything so you file comes out as file.html.txt, and the browser won't read that. Try using Wordpad instead and check the file extension.




Q. I am creating an image slideshow with JavaScript, and I want to include text for each image, but I hate the look of the form box (white and boxy!), so here is my question.
1. Can you change the look of a form box (like say, make it a black background instead of white), if not then,
2. Can you do alternate text within the JavaScript for each individual picture so that if you hover the pointer over the image it will read "whatever" as in non-scripted images. If not then,
3. Are there other text options I can use that are not related to putting the text as a part of the image itself.

A. Below is an example of a slide show where the image is a link and has a text link below it. When you click on the image or text link a page will open in a separate window. You should be able to modify it to meet your needs.
[Be sure to global edit out the periods following the less than signs in this example - they're embedded in a lot of different places throughout the script. -- Ed.]
<html>
<head>
<title>Image and Link Slide Show</title>
<SCRIPT LANGUAGE="JavaScript">
var a=0
/* Popup window properties - set these to your preferences. */
var winwidth="400" // Set the window width
var winheight="400" // Set the window height
var winloc="yes" // Display location bar - yes or no
var winstatus="yes" // Display status bar - yes or no
var windir="yes" // Display directories - yes or no
var wintool="yes" // Display toolbar - yes or no
var winscroll="yes" // Allow scroll bars - yes or no
var winmenu="yes" // Display menubar - yes or no
var winresize="yes" // Allow resizing of the popup - yes or no
var wintop="0" // Top position in pixels of the popup
var winleft="0" // Left position pixels of the popup
function OpenWin(linkid)
{ var winprops="width="+winwidth+",height="+winheight+",
location="+winloc+",status="+winstatus+",
directories="+windir+",toolbar="+wintool+",
scrollbars="+winscinstatus+roll+",menubar="+winmenu+",
resizable="+winresize+",top="+wintop+",left="+winleft+"
PoPuP=window.open(linkid, "popup",config=winprops)
// NewWin.focus()
}
// Enter your images Here along with the directory if need be.
var imgs=new Array()
imgs[0]="owls3.jpg"
imgs[1]="hawks2.jpg"
imgs[2]="pic221.jpg"
imgs[3]="eagle1.jpg"
// Enter your URLS and what you want to go in the ALT property and the text link.
// This is so when they mouse over the image
// There will be a small description of the Image or URL.
// Make sure you separate them with an ampersand "&"
// so that the script can separate them out before writing out the link.
var urls=new Array()
urls[0]="http://www.requestcode.com&Requestcode"
urls[1]="http://www.javascriptkit.com&Javascriptkit"
urls[2]="http://www.dynamicdrive.com&Dynamic Drive"
urls[3]="http://www.htmlgoodies.com&HTML Goodies"
// This is the function that displays the images and links.
// You should not have to modify it.
function Doimglink()
{
if(a>imgs.length-1)
{a=0}
if(a<0)
{a=imgs.length-1}
newurls=urls[a].split("&")
if(document.layers)
{
document.mydiv.document.write("<CENTER><A HREF='javascript:OpenWin\(
\""+newurls[0]+"\"\)'><IMG SRC='"+imgs[a]+"' BORDER='0' ALT='"+newurls[1]
+"'></A><BR><A HREF='javascript:OpenWin\(
+\""+newurls[0]+"\"\)'>"+newurls[1]
+"</A></CENTER>")
document.mydiv.document.close()
}
if(document.getElementById)
{
elm=document.getElementById("mydiv")
elm.innerHTML="<A HREF='javascript:OpenWin\(\" "+newurls[0]
+"\"\)'><IMG SRC='"+imgs[a]+"' BORDER='0'
+TITLE='"+newurls[1]+"'></A><BR><A
HREF='javascript:OpenWin\(\""+newurls[0]+"\"\)'>"+newurls[1]+"</A>"
}
}
// function used to display random images
function rannum()
{
len=imgs.length // how many entries in the array
prev=a // Save the previous image index
a=Math.round(Math.random()*(len-1))
// If the current image equals the previous image add one to get a different image.
if(a==prev)
{a++}
}
window.onload=Doimglink
// In the divs below you may have to add the top and
// left properties to the style tag to position it
// correctly in the window.
// You must keep it positions as absolute for it to work in NS4.0+ browsers.
</SCRIPT>
</head>
<body onLoad="Doimglink()" onResize="if(document.layers){location.reload()}">
<CENTER><H1>Manual Slide Show With Links</H1>
<DIV ID='mydiv'
STYLE="position:absolute;top:120;left:200;height:320;font-family:verdana"></DIV>
<DIV ID='ctrldiv' STYLE="position:absolute;top:120;left:100">
<A HREF="javascript:a++;Doimglink()">Next Image</A> <BR>
<A HREF="javascript:a--;Doimglink()">Previous Image</A> <BR>
<A HREF="javascript:rannum();Doimglink()">Random Image</A><BR>
<A HREF="javascript:self.close()">Close Window</A> <BR>
</DIV>
</body>
</html>


 

 

 

 

 

Top

News Goodies


SCO Seeks Licenses Down Under
[March 22, 2004] The software vendor sends out letters seeking fees for Linux from Australian end users.

Click here to read the article

 


 

Microsoft Faces Stiff Fines From EU
[March 22, 2004] Anti-competitive forces within the European Commission could slap the world's largest software vendor with a $600 million fine. And that's just for starters.

Click here to read the article

 

 

Feds Arrest Alleged Google Extortionist
[March 22, 2004] A California man is charged with attempting to extort money from Google to stop distribution of a software program that registers fraudulent AdSense clicks.

Click here to read the article



 

FCC's Powell: Don't Fear the Data
[March 22, 2004] The government's top communications regulator tells a major industry gathering that wireless data is more than just an add-on service.

Click here to read the article

 

 

 

Apache Server Upgrade Tightens Security
[March 22, 2004] Version 2.0.49 of the open source HTTP server offers the latest in bug fixes to prevent denial of service attacks.

Click here to read the article

 

 

 

A Sun Cluster of a Deal
[March 22, 2004] A couple months ago, the company admitted its mistakes in abandoning x86. Now, it's making up for lost time with a database clustering deal to sweeten the pot.

Click here to read the article
 

 

 

IBM Chatting up VXML Toolkits
[March 22, 2004] Voice-enabled toolkits look beyond call center applications.

Click here to read the article

 

 


Novell Takes Groupware to Linux
[March 22, 2004] Product rollout paves path to this week's BrainShare conference.

Click here to read the article

 

 

MontaVista Adds Linux Tools
[March 22, 2004] Deal with Real-Time Innovations may serve as marketing coup against long-time competitor Wind River.

Click here to read the article


 

 

(CDMA-Flavored) 3G's Chance to Shine
[March 22, 2004] Interoperability. Consolidation. 3G's price and promise. Moblogs. Speed. Network hopping. It's on the table and in the air at CTIA's Wireless 2004 show.

Click here to read the article

 

 

 

 


Top

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
 

 

 


Top

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:

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 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!
 

Top


 


Windows Tech Goodie of the Week:

 

Creating a Popup Date Picker

http://www.15seconds.com/issue/040315.htm

Learn how to extend the functionality of the ASP.NET Calendar control to
remove some of the annoying postback delays that occur when populating a
text box with a date from a popup calendar.


***And ***


Required Fields Sample Form

http://www.asp101.com/resources/visitors/index.asp#requiredform

This is a simple form for collecting name and address information. What's
unique about it is how it deals with required fields by automatically going
to the appropriate form element and alerting the user. The form is valid
XHTML Strict, has tool tips, uses CSS instead of tables to position the
elements, and issues alerts via ASP-generated client-side javascript.

 

Top
 
 
 
And Remember This . . .


On this day in...

1945 Formation of the Arab League

On this date in 1945, at a meeting in Cairo, Egypt, representatives from Egypt, Syria, Lebanon, Transjordan, Saudi Arabia, Iraq, and Yemen formed the Arab League. The Arab League was formed to foster economic growth in the region, resolve disputes between its members, and coordinate political aims. Countries that later joined are: Algeria (1962), Bahrain (1971), Comoros (1993), Djibouti (1977), Kuwait (1961), Libya (1953), Mauritania (1973), Morocco (1958), Oman (1971), Qatar (1971), Somalia (1974), Southern Yemen (1967), Sudan (1956), Tunisia (1958), and the United Arab Emirates (1971). The Palestine Liberation Organization was admitted in 1976. Egypt's membership was suspended in 1979 after it signed a peace treaty with Israel; the league's headquarters was moved from Cairo, Egypt, to Tunis, Tunisia. In 1987 Arab leaders decided to renew diplomatic ties with Egypt. Egypt was readmitted to the league in 1989 and the league's headquarters was moved back to Cairo.


Today was also the day that in: 337 Roman Emperor Constantine died at 47; 1349 blaming them for the Black Death, the townspeople of Fulda, Germany massacred the Jews in the area; 1457 Gutenberg created the first printed book - the Bible; 1733 Joseph Priestly invented carbonated water (seltzer water); 1822 the New York Horticultural Society was founded; 1841 Orlando Jones received the patent for cornstarch; 1873 slavery was abolished in Puerto Rico; 1903 a drought caused Niagara Falls to run out of water; 1914 the world's first airline - the St. Petersburg Tampa Airboat Line, began operations; 1922 a British Court sentenced Mahatma Ghandi to six years in prison; 1946 Britain granted independence to Jordan; 1954 the first shopping mall opened, in Southfield Michigan; 1963 the Beatles released their first album - "Please Please me"; 1963 British Minister of War John Profumo denied having sex with Christine Keeler; 1975 Walt Disney World Shopping Village opened (Lake Buena Vista);


Born today were: in 1814 sculptor Thomas Crawford; 1887 comedian Chico Marx; 1910 English writer Nicholas Monsarret; 1912 Irish actor Wilfrid Brambell; 1922 screenwriter Stuart Stern (Rebel Without a Cause); 1930 composer/lyricist Steven Sondheim; 1936 singer Roger Whittaker; 1948 English composer Andrew Lloyd Weber; 1950 English actresss Mary Tamm Dewsbury (Dr. Who); 1959 actor Mathew Modine; 1962 musician Suzanne Sulley

 


Thanks for reading Goodies to Go!

 

Archive Home Page.



Make a Comment

Loading Comments...

  • 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