Last updated 25 june 08

kPlaylist performs automatic installation and upgrade. If you have a webserver with PHP support and MySQL, download the script, put it in a webaccessable area and point your browser to the script and the installation or upgrade should start. Refer to this page later if you have problems.

If you use Windows and don't have Apache, PHP or MySQL, download wampserver and get everything in one install. Come back here after the wamp install to continue the kPlaylist installation.

NB for WAMP! Note the username and password for MySQL

Preinstall setup

You'll need a running copy of MySQL and a webserver with PHP4 or PHP5 to perform the installation. PHP5 is recommended.

If you use a Linux distribution those applications will probably already be installed. If not, use your favourite package manager and install these.

1. Create a new directory for kPlaylist under your htdocs structure and copy the 'kplaylist' file to 'index.php' under that directory.

If you're running a UNIX based system, make sure that the user running your webserver can read the kPlaylist file and directory.

If you are using WAMP, you will have a "WAMP Web Documents" shortcut on your desktop, go there and create a new directory. Copy the 'kplaylist' file to 'index.php' in that directory.

2. Open your favourite webbrowser and point it to the kplaylist directory, and the installer will start.

Example, http://localhost/kplaylist/ if you named the directory kplaylist.

3. Now the installer should have started. Now you have to decide whether to use an existing database or a new one. If you are running kPlaylist on your own machine, create a new. If you intend to run on a hosted solution and only have access to one database, use existing.

Create new database

Enter the username and password for the root user of MySQL.

If you installed WAMP, enter the username and password you selected for MySQL during WAMP installation. Click continue and you are finished.

Use existing database

Edit the scipt with a texteditor and adjust the $db['name'] (database name), $db['user'] (user), $db['pass'] (password) and $db['host'] (server) to suit your database setup. It's also suggested to edit the $db['prepend'] to 'kplay_' to avoid duplicate table names. Click 'Continue' when you're finished.

Post install setup

Log into kPlaylist with admin/admin (follow the instructions on the installer.) Now, click the 'Settings' button to the right. A new window will appear. Click 'File handling', and put your music directory or directories in the field called 'Base directory'. Separate multiple paths with: ;. You can also click the "find" button on the right to automatically search for directories containing music.

Now, you should run the 'Update' button on the right. This will add all music files in your database. You don't need at first, but it's recommended because you get alot of features enabled right away.


Make sure that the webserver can read your audio files. If they can't, they wont appear in kPlaylist.

You should check httpd.conf in your conf directory on Apache. Look for the variable called 'User' and 'Group'. This is normally 'nobody' and 'nogroup'. Make sure this user or group can read MP3 files, and execute directories in your audio path.


Getting this? Client does not support authentication protocol requested by server; consider upgrading MySQL client? Go here for the solution:

Ancient errors, but may occur:

Getting an error saying: 'Can't connect to local MySQL server through socket "/tmp/mysql.sock"?

Do the following, find the IPC (socket) by issuing the following command in your shell:
find / -name "mysql.sock" -ls
Did you find it? Please edit your PHP configuration file (php.ini) which is usually located here: /usr/local/lib/php.ini, and find the key called "mysql.default_socket" and put the full path to the socket file there. (For example: mysql.default_socket = /var/lib/mysql/mysql.sock). Then restart Apache and you should be set.

Have comments to the installation instructions? If so, please take a few minutes and tell us how it can be improved here.