I need dynamic pages without PHP or a database. What are my options?
September 12, 2007 3:56 PM   Subscribe

Without access to PHP, MySQL, or any other fancy server-side stuff I still need to have dynamic pages. What are my options?

Environment: Corporate setting where PHP, MySQL, and anything that doesn't cost thousands of dollars must be banned for "security issues".

My goal is twofold

1. I have a colleague that would like to setup a job queue to track their print jobs (they are a print shop). Currently they have an excel file that has all the nitty gritty details of who ordered what and whether it has printed or not and they share this file though a file server. He wanted to find a way to make the collaboration a bit more dynamic where they would automatically see things as they were updated by any of the 4 people who would be adding jobs.

My thought was to create a webpage tied to a web server that they can all map to as a network drive. The page would be set to auto-refresh every 10 seconds or so. Give each of the 4 people NVU and show them how to edit the table and they're good to go. The problem is the Excel file currently has a conditional format that says if they put an "X" into a certain cell, the row turns red. I need to make that happen on the webpage using javascript and css and I'm lost on how to dynamically say "If the contents of this table data cell has an X, change the span tag to Y" in order to call on that in the stylesheet.

2. Obviously everyone is probably thinking how much easier it would be to find something open source that would fit the bill, if only we were allowed to use perl, php, and all the other fine things in this world. This particularly hits home because in my department we would like to begin collaborating on a large documentation knowledge base. A wiki or something like Bugzilla would be great but all these content management systems require server-side action. Is there any possibility we could squeak by with some fancy javascript saving to txt-based files within the webspace? Does any CMS like that even exist?
posted by genial to Technology (11 answers total)
 
tiddlywiki is a wiki that doesn't need a server side component.
posted by seanyboy at 4:02 PM on September 12, 2007


Can you use IIS/ASP.NET? You could easily host it on someone's workstation.
posted by mphuie at 4:22 PM on September 12, 2007


I don't really know where to start. I'll just pick a few topics and ignore the rest.

- What means "fancy server-side stuff"?

- Of #2, "Is there any possibility we could squeak by with some fancy javascript saving to txt-based files within the webspace?" Your idea is rather nebulous, but I'm going to guess "no." You lack the idea of "save." I say use something external. There's a bazillion password-protectable free Wiki hosts on the 'Net. At least those will write something to disc that your web browser sent.

- You lack locking on your page-writing scheme. If I start to add X, you start to add Y, I save X, and you save Y, do you have only Y?
posted by cmiller at 4:37 PM on September 12, 2007


Nasty situation, but could you just write some VBA into the excel sheet so that it spits out an appropriate HTML page at each save? It's just going to be a bunch of print statements, nothing too tricky.
posted by pompomtom at 4:42 PM on September 12, 2007


If you use javascript, it means the processing is being done by the client. That, in turn, means that the client can change your javascript and subvert your system. (It's easy to do with certain client side proxies, such as "Proxomitron".)

Javascript thus gives you exactly zero security and maximum vulnerability for the malicious to hack your system.

On my server I've enabled server-side scripting. It doesn't require PHP or SQL or anything like that. However, it does permit me to run UNIX shell scripts, which means I have the full programmable power of the Bourne shell at my disposal -- and that may well be powerful enough for your needs.

As an example of how I use that, I have some private pages which only I access which process and filter my server logfile in different ways to see who's been using my server, and for what. For a while I also kept a visit-counter using a shell script.
posted by Steven C. Den Beste at 4:46 PM on September 12, 2007


Back in the late nineties, before I understood how to use server side technology I built what are in retrospect absurdly complex dynamic systems that operated entirely client-side using Javascript and cookies. If you think of the cookies as your database and chuck the idea of using the Excel file you could certainly do this.

Create an HTML version of the printer queue, storing the form fields as people input them (as "chips" in a cookie) via Javascript and give everyone access to the computer running that webpage via a terminal like VNC, or just have them interact with the web page directly through that physical computer if they're co-located.
posted by Jeff Howard at 4:48 PM on September 12, 2007


You probably need to learn about XML and XSLT transformations. Doing all this on the client-side though, is a fundamental mistake.

If you have access to ASP/.NET or a *NIX shell, for the sake of your sanity, use it. Speak to your people in I.T.

Otherwise, I think you're pissing into the wind.
posted by ReiToei at 5:12 PM on September 12, 2007


"A wiki or something like Bugzilla would be great but all these content management systems require server-side action. Is there any possibility we could squeak by with some fancy javascript saving to txt-based files within the webspace?"

Can't you use a hosted wiki? You need need to have this information in a database (even if it's hosted outside your 'corporate environment') of some sort, not text files. You're approaching a 2007 problem with a 1983 solution.
posted by ReiToei at 5:21 PM on September 12, 2007


Could you just install an HTTP-server-based tool on your workstation, and get others in the office to access the web app there? It's pretty easy to install, for example, Ruby on Rails, with a standalone server. Maybe avoid running it on "standard" HTTP ports (80, 8000, 8080). That would get you around any restrictions on what can be installed on servers. Of course, if IT locks down your workstations too then this won't help.

You might also be able to do something with the capabilities that IIS (included with Windows) provides out of the box. I think it can run CGI scripts, which you could code in just about any programming language (maybe even a batch file!)
posted by Emanuel at 5:40 PM on September 12, 2007


Response by poster: Can't you use a hosted wiki? You need need to have this information in a database (even if it's hosted outside your 'corporate environment') of some sort, not text files. You're approaching a 2007 problem with a 1983 solution.

Welcome to the corporate world (actually Higher Education). It feels like I live in 1983 sometimes. The knowledge base would contain confidential information, therefore it needs to remain internal to the network or I'll really have the security guys on me.

Hosting on my computer seems a likely solution. Only downside would be the need for my computer to be on 24/7 or put a dedicated box in my office for it (both easier solutions than trying to get the IT guys to budge, and I'm in the same department as them).
posted by genial at 6:43 PM on September 12, 2007


If you can install IIS on your windows box, then you'll happy to hear that there's a wiki that runs on an MS Access database.

This shouldn't be much hassle to get up and running. The downsides are that, yes, you're box will have to be on all the time (unless you get a dedicated one) and (last time I fiddled about with ASP) Access can only handle 10 or so concurrent connections before it freaks out.

If you could install SQL Server instead of using Access, you wouldn't have this problem.

Good luck.
posted by ReiToei at 1:14 AM on September 13, 2007


« Older How do I move lots of files based on a list?   |   Can I pay a Romanian and not be considered a... Newer »
This thread is closed to new comments.