The Wire was an existing intranet application built several years ago using ASP Classic (VBScript) with an MS SQL database. While we knew we wanted to build the new version of the site in PHP, switching to MySQL seemed impractical due to the way that the original site was set up: The Wire served as the client's main document repository and files were stored as binary object in the database itself to allow for full-text indexing rather than simply using pointers to physical file locations on the server. As such, switching database engines would have added a great deal of unnecessary complexity to the project.
This was our first opportunity to build a site using PHP and MS SQL and we faced several challenges unique to such a project, specifically setting up and running PHP on Windows and using the new sqlsrv libraries for PHP. For the sake of security and performance, nearly all database calls are handled through stored procedures; a custom function makes it simple to perform select, insert, update, and delete commands on the data.
Improved programming efficiency between the old and new versions of the site drastically cut down both the file sizes as well as the complexity and number of files involved. What was once a fairly difficult to manage site became extremely simple as more content was moved into the administrative GUI. Administrators can upload documents, create "quick links", program buttons on the home page, and managers can track and approve their employees' time off requests.