Being a software developer yourself, it will be easy for you to
understand the parts of a web application. We can mainly divide it
into 2 parts:
1. Client Side and
2. Server Side
The client side is the part that end user interface. There are plenty
of tools available you can use for creating clinet-side user
interface. Some are free (HtmlKit) and some with extra capabilities
but not free (Macromedia Dreamweaver, Frontpage, etc.).
Now back to your questions, all your items more or less involve
server-side code. Server side code is responsible for creating HTML
pages dynamically reading from database or flat files or maybe some
processing (like validating user). Let me answer your issues by
points.
<<
1. The capability to support a person going to the website from
one computer, selecting a file from a list of files that have been
uploaded, and initiate downloading that file to a second computer that
is connected to the internet. For example, we go to our site, locate
an MPEG1 someone uploaded, and download it to another computer we
control but are not physically at.
>>
This is totally a server side implementation. The other computer that
you are downloading the file to should necessarily have some way to
get it (most popular is FTP). For this you should know some server
side language. I don't think you will get code out-of-the-box (or
maybe you can - search google). Dreamweaver for example supports Cold
Fusion on server side for sure.
<<
2. The capability to execute software routines at intervals and
have them interact with other computers connected to the internet. For
example, have our site connect to another computer we control once an
hour and retrieve a predetermined file or check a condition (like how
much space is left on the second computers hard drive).
>>
This again can be achieved by some routine on the host computer. A
script can be written and scheduled either in the appserver hosting
your website of even the Operating System. A friend use to track on
time and off time of all the computers connected on the network using
a Java program which was scheduled to wake up every hour and check and
go back to sleep. All you need to know is the address of the target
computer.
<<
3. The capability to protect pages from being reached except via
our calls (like when a user get the id/password correct).
>>
This can be easily achieved in any serverside language. You should be
able to find some code on internet for this. If you have a database,
you can run a SQL and validate the user.
<<
4. The capability to put up a list of items from a data list and
let the user select an item. For example, put up a list of reports
that exist and let the user select the one theyre interested in.
>>
This one involves server-side processing to 1. generate the
client-side HTML dynamically by reading the file that has list of
available reports on the server and then display that list on the
client browser. User can then select the fiel to view.
<<
5. The capability to store files on our site.
>>
Every webserver supports that. Do you mean ability to upload files?
You can find the code for free on internet. Again search google. Java
code is widely available.
<<
6. The capability to let them browse a list of files on their
computer, and upload the selected file. For example, theyve built an
MPEG1 file and want to upload it to our site.
>>
See commet to point 5.
Hope this helps,
--
Rahul Jain |