"Be one with The Problem, young Skywalker"
PHP JavaScript CSS Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


The Problem

"Be one with the problem, young Skywalker"

And it's done! (or somewhat finished) Unfortunately this project isn't going to be maintained anymore, as it was created for an assignment. You can still check out The Problem by following the installation guide below, or visiting http://theproblem.dreamhosters.com

Installation and Usage

The Problem is written in PHP with MySQL and uses some Apache-specific features, and as a result you will need an Apache/PHP/MySQL stack. We recommend installing XAMPP.

To run The Problem, you will also need the Imagick PHP extension installed. For a guide on how to install this on Windows with XAMPP, take a look here.

Once both of these are installed, you now need to clone The Problem and copy it into XAMPP. To do this, you will need Git installed. First, change directory to the htaccess folder in your XAMPP installation, or the public folder for a different type of installation. Now, run the following command:

git clone https://github.com/The-Problem/The-Problem

The Problem will now be cloned into a The-Problem directory inside your public directory.

The installation contains two directories: www and server. Move the files in www to the place that you want The Problem to be accessible from (e.g. in the server's public directory). Move the files in server to a folder for The Problem that is preferably in a place inaccessible from the Internet, for example in the XAMPP installation folder. Now, open up the index.php file in the copied www folder, and change the path to point to the core/lime.php in the server directory.

The next step in setting up The Problem is to choose your profile. In this case, 'profile' refers to a set of configuration options that The Problem loads on startup. Specifically, this is the running environment, cache options, and other important options. There are two 'example' files, one for a development environment, and one for a production environment. Unless you know what you are doing, you should copy the profile-production.php file in the server directory to profile.php. Without having a profile.php file, The Problem will not work.

The next step is to setup all of the database tables and configuration. A database.sql file is available in the cloned directory. Create a new database for The Problem, and run this SQL in it (note: this can be done through the 'Import' feature in phpMyAdmin if that is installed). You may also want to create a user account with permissions for this database. Now, copy the database-example.php to database.php, and change the values inside to correspond with those for your database.

Start up Apache and navigate to the directory where you placed the www files, in your browser. You should be greeted with The Problem's homepage. Congratulations! You've successfully setup The Problem.

Thank you for participating in this computer-aided enrichment centre activity. We look forward to seeing you for the next round of testing.