### [ phpMyFAQ 2.0.x Documentation ]

1. Introduction
   1. License
   2. Support
   3. Copyright
2. Installation
   1. Requirements
   2. Preparations
   3. Install-Script
   4. First Steps
   5. Notes regarding the search-function
   6. Automatic content negotiation
   7. PHP settings
   8. Enabling mod_rewrite support
   9. Enabling LDAP support
   10. PDF export
   11. Firefox and IE7 search plugins
   12. Static solution ID
   13. Spam protection
3. Upgrading
   1. Upgrading from phpMyFAQ 1.4.x
   2. Upgrading from phpMyFAQ 1.5.x
   3. Upgrading from phpMyFAQ 1.6.x
   4. Upgrading phpMyFAQ 2.0.x versions
   5. Modifying templates for phpMyFAQ 2.0.x
4. Frontend
   1. Change languages
   2. RSS Feeds
   3. Advanced search
   4. Instant Response
   5. Add content
   6. Ask questions
   7. Open questions
   8. Submit translation
   9. Digg it!
   10. Internal references
5. Administration
   1. User Administration
   2. Group Administration
   3. Category Administration
   4. Record Administration
   5. Comment Administration
   6. News Administration
   7. Glossary
   8. Statistics
   9. Exports
   10. Backup
   11. Configuration
6. Customising phpMyFAQ 2.0.x
   1. The file template/index.tpl
   2. The file template/style.css
   3. More Templates
7. One more thing

1. Introduction

phpMyFAQ is a multilingual, completely database-driven FAQ-system. It supports various databases to store all data, PHP 4.3.3 (or higher) is needed in order to access this data. phpMyFAQ also offers a multi-language Content Management-System with a WYSIWYG editor and an Image Manager, flexible multi-user support with user and group based permissions on categories and records, a wiki-like revision feature, a news system, user-tracking, language modules, enhanced automatic content negotiation, templates, extensive XML-support, PDF-support, a backup-system, a dynamic sitemap, related articles, tagging, RSS feeds, built-in spam protection systems, LDAP support, and an easy to use installation script.

This documentation should help you with installing and administrating phpMyFAQ.

back to top

1.a. License

phpMyFAQ is published unter the Mozilla Public License Version 1.1 (MPL). This license guarantees you the free usage of phpMyFAQ, access to the sourcecode and the right to modify and distribute phpMyFAQ.

The only restrictions apply to the copyright, which remains at all times at Thorsten Rinne and the phpMyFAQ Team. Any modified versions of phpMyFAQ will also fall under the terms of MPL. Any other program, that may only be accessing certain functions of phpMyFAQ is not affected by these restrictions and may be distributed under any type of license.

A commercial usage or commercially distribution of phpMyFAQ, e.g. on CD-ROMs, is allowed, as long as the conditions mentioned above are met.

We decided to use MPL as the licensing model for phpMyFAQ because we feel that it is a good compromise between the protection of the openness and free distribution on the one hand and the interaction with other software regardless of its licensing model. When compared to other licensing models its text is short and easily comprehensible, even for newcomers.

This documentation is licensed under a Creative Commons License.

back to top

1.b. Support

If you should run into any problems using phpMyFAQ check out our support forums at forum.phpmyfaq.de. There is no support for free by phone or email, please refrain from calling or mailing us.

The phpMyFAQ team offers the following paid services:

- Customizing
- Support

If you're interested, just take a look at our support page.

back to top

1.c. Copyright

© 2001-2009 by Thorsten Rinne and phpMyFAQ Team under the Mozilla Public License. All rights reserved.

back to top

2.Installation

2.a. Requirements for phpMyFAQ

phpMyFAQ addresses a database system via PHP. In order to install it you will need a webserver that meets the following requirements:

- PHP
  - from version 4.3.3 (recommended: latest PHP 4.4 or latest PHP 5.2)
  - register_globals = off (recommended)
  - safe_mode = off (recommended)
- Webserver (Apache 1.3/2.0/2.2 or lighttpd 1.0+ or IIS 5.0+)
- Database server
  - MySQL 4.x, 5.x with the PHP4 MySQL extension (recommended: 5.0.x)
  - MySQL 4.1.x, 5.x with the PHP5 MySQLi extension (recommended: 5.0.x)
  - PostgreSQL 7.2+, 8.x (recommended: 8.1.x)
  - Sybase
  - Microsoft SQL Server 2000, 2005
  - IBM DB2 Universal Database 8.2.x, 9.1.x, IBM Cloudscape, and Apache Derby
  - SQLite with PHP5
  - MaxDB 7.5 or later (experimental)
  - Oracle 8i or later (experimental)
  - Firebird / Interbase (experimental)
- correctly set: access permissions, owner, group

You can only run phpMyFAQ successfully, when the PHP directive safe_mode is set to off, further constraints affect the directives open_basedir and disable_functions, which can be set in the central php.ini or the httpd.conf respectively.

In case PHP runs as module of the Apache, you will have to be able to do a chown on the files before installation. The files and directories must be owned by the Apache user.

You can determine which versions your webserver is running by creating a file called info.php with the following content:

    <?php phpinfo(); ?>

Upload this file to your webspace and open it using your browser. The installation-script checks which version of PHP is installed on your server. Should you not meet the requirements, you cannot start the installation process.

In case you have PHP below 4.3.3 installed you cannot use phpMyFAQ.

phpMyFAQ uses a WYSIWYG online editor. It uses a non-standard feature based on JavaScript implemented in Mozilla Firefox 0.7+ (any platform), Mozilla 1.3+ (any platform), Opera 9.0+ (any platform) and Internet Explorer 5.5+ for Windows, therefore the editor will only work in one of these browsers. You have to enable JavaScript for the Ajax based functions as well.

back to top

2.b. Preparations

Please unzip the downloaded archive on your harddisk.

You can modify the layout of phpMyFAQ using templates. A description of how this is done can be found below. Copy all unzipped files to your webserver in a directory using FTP. A good choice would be the directory faq/.
Important:
Writing permission for your script is needed in this directory to be able to configure the file data.php during installation. This is the case if you're running PHP as CGI or as mod_php with disabled safe-mode. The installation script will stop when your webserver isn't configured as needed.

It might help to set chmod 777 to the whole phpMyFAQ directory to avoid problems during the installation. If you're running a very restrictive mod_php installation you should keep the chmod 777 for the following files and directories even after the succesful installation:

- the file data.php in the directory inc/
- the directory attachments/
- the directory data/
- the directory images/
- the directory pdf/
- the directory xml/

All other directories shouldn't be world-writable for your own security.

The database user needs the permissions for CREATE, DROP, ALTER, INDEX, INSERT, UPDATE, DELETE and SELECT on all tables in the database.

back to top

2.c. Install-Script

Open your browser and type in the following URL:

    http://www.example.com/faq/install/installer.php

Substitute www.example.com with your actual domain name. When the site is loaded enter the address of your database server (e.g. db.provider.com), your database username and password as well as the database name. The datebase must be availible before running the installation script. You can leave the prefix-field empty. If you are planning on using multiple FAQs in one database you will have to use a tableprefix, though (i.e. sport for a sports-FAQ, weather for a weather-FAQ, etc.). Please note that only letters and an underline: "_" can be used as the prefix.

If your PHP was compiled with the LDAP extension you can add your LDAP information, too. You have to insert your LDAP informations, too.

When using multiple FAQs you need to install them independently into different directories (e.g. faq1/, faq2/. faq3/ etc.). In addition you can enter your language, default here is English. Furthermore you should register your name, your email address and - very importantly - your password. You must enter the password twice and it have to be at least six places long. Then click the button "install" to initialize the tables in your database.

back to top

2.d. First Steps

You can enter the public area of your FAQ by entering

    http://www.example.com/faq/index.php

into your browser's address field. Your FAQ will be empty and presented in the the standard layout.

To configure phpMyFAQ point your browser to

    http://www.example.com/faq/admin/index.php

Use the username admin and your selected password for your first login into the admin section.

Some variables that doesn't change regulary, they can be edited in the file inc/constants.php. You can change the

- the time zone of your server (default: 0:00 hours)
- the timeout in the admin section (default: 30 minutes)
- the timeout warning popup in the admin section (default: 5 minutes)
- the solution id start value (default: 1000)
- the incremental value of the solution id (default: 1)
- the number of records in the Top10 (default: 10)
- the number of latest records (default: 5)
- the number of open questions in the RSS feed (default: 50)
- flag with which Latest and Topten RSS feeds will be forced to use the current PMF SEO URL schema (default: true)
- flag with which Google sitemap will be forced to use the current PMF SEO URL schema (default: true)
- flag with which Yahoo sitemap will be forced to use the current PMF SEO URL schema (default: true)
- the number with which the Tags Cloud list is limited to (default: 50)
- the number with which the Autocomplete list is limited to (default: 20)

back to top

2.e. Notes regarding the search-function

The boolean fulltext-search will only work with MySQL and if there are some entries in the database (5 or more). The term you are looking for should also not be in more than 50% of all your entries, or it will automatically be excluded from search. This is not a bug, but rather a feature of MySQL. Please remember that you need MySQL 4.1 or later to use the boolean fulltext search for languages like Arabic, Chinese, Hebrew, Korean or Japanese.

back to top

2.f. Automatic content negotiation

To set the default language in your browser you have to set a variable that gets passed to the web server. How this is done depends on the browser you are using.

- Mozilla Firefox
  Tools -> Options -> Advanced -> Edit Languages
- Mozilla/Netscape 4.x and later versions

      Edit -> Preferences -> Navigator -> Languages

- Safari
  Safari uses the MacOS X system preferences to determine your preferred language:

      System preferences -> International -> Language

- Opera
  Most versions:

      File -> Preferences -> Languages

  Linux/*BSD versions 5.x and 6.x:

      File -> Preferences -> Document -> Languages

- Internet Explorer
  Windows:

      Tools or View or Extras -> Internet Options -> (General) Languages

  MacOS:

      Edit -> Preferences -> Web Browser -> Language/Fonts

back to top

2.g. PHP settings

If you're able to edit the php.ini file, please check that the variable file_upload = On is set; otherwise the file upload will not work for the attachments. You should disable the safe_mode because it will cause trouble when you're trying to upload files or if you want to use the user tracking.

back to top

2.h. Enabling mod_rewrite support

Apache Webserver

If you want to enable the search engine optimization you have to rename the file _.htaccess to .htaccess in the root directory where your FAQ is located. Then you have to activate the mod_rewrite support in the admin backend in the configuration page.

IIS Webserver

If you want to enable the search engine optimization you have to rename the file _httpd.ini to httpd.ini in the root directory where your FAQ is located. Then you have to activate the mod_rewrite support in the admin backend in the configuration page.

lighttpd Webserver

If you want to enable the search engine optimization you have to copy the rewrite rules in the file _lighttpd.conf to your lighttpd.conf. Then you have to activate the mod_rewrite support in the admin backend in the configuration page.

back to top

2.i. Enabling LDAP support

If you're entered the correct LDAP information during the installation you have to enable the LDAP support in the configuration in the admin backend. After this action phpMyFAQ reads the full username and email address from LDAP and fills this information automatically into the input forms in the public frontend.

back to top

2.j. PDF export

Not every (X)HTML tag is supported by the PDF export. Currently we're supporting the following tags in the PDFs:

- support for bold, italics, underlined text
- support for images
- basic support for tables
- support for lists <li>
- <pre> will be displayed using Courier font
- support for <br>, <br /> and <p>
- support for <hr> and <hr />
- support for <sup> and <sub>

back to top

2.k. Firefox and IE7 search plugins

phpMyFAQ 2.0.x provides search plugins for Mozilla Firefox 2 and Microsoft Internet Explorer 7 based on the OpenSearch specification. Every user in the frontend can install it. With an installed search plugin you can search through the phpMyFAQ installation with the search box in upper right corner of Mozilla Firefox 2 or Microsoft Internet Explorer 7.

back to top

2.l. Static solution ID

phpMyFAQ implements a static solution ID which never changes. This ID is displayed next to the question on a FAQ record page. You may think why do you need such an ID? If you have a record ID 1042 it is now possible to enter only the ID 1024 in the input field of the fulltext search box and you'll be automatically redirected to the FAQ record with the ID 1024. By default the numbers start at ID 1000 but you can change this value in the file inc/constants.php. You can also change the value of the incrementation of the static IDs.

back to top

2.m. Spam protection

phpMyFAQ 2.0 performs these three checks on public forms:

1. Check against IP/Network address
2. Check against banned words
3. Check against the captcha code

The IP/Network addresses can be added or removed in the configuration panel in the administration backend. If you want to add banned words to phpMyFAQ, then you have to edit the file inc/blockedwords.txt. Please add only one word per line.

back to top

3. Upgrading

Upgrading to phpMyFAQ 2.0.x is possible from the following versions:

- phpMyFAQ 1.4.x
- phpMyFAQ 1.5.x
- phpMyFAQ 1.6.x

If you're running an older version of phpMyFAQ we recommend a new and fresh install.

back to top

3.a. Upgrading from phpMyFAQ 1.4.x

Upgrading from 1.4.x to 2.0.x is a really major upgrade. Please make a full backup before you run the upgrade! Nevertheless the update from phpMyFAQ 1.4.x to the current release is fairly simple. First you have to delete all files except:

- the files data.php and config.php in the directory inc/
- the directory attachments/
- the directory data/
- the directory images/
- the directory pdf/
- the directory xml/

Copy the new files to your webspace and open the following URL in your browser:

    http://www.example.com/faq/install/update.php

Choose your currently installed phpMyFAQ version and click the button of the update script, your version will automatically be updated.

Note: You cannot update from MySQL to another database.

back to top

3.b. Upgrading from phpMyFAQ 1.5.x

Upgrading from 1.5.x to 2.0.x is a really major upgrade. Please make a full backup before you run the upgrade! Nevertheless the update from phpMyFAQ 1.5.x to the current release is fairly simple. First you have to delete all files except:

- the files data.php and config.php in the directory inc/
- all files in the template/ directory

Open the following URL in your browser:

    http://www.example.com/faq/install/update.php

Choose your installed phpMyFAQ version and click the button of the update script, your version will automatically be updated.

Note: You cannot update from MySQL to another database.

back to top

3.c. Upgrading from phpMyFAQ 1.6.x

Upgrading from 1.6.x to 2.0.x is a really major upgrade. Please make a full backup before you run the upgrade! Nevertheless the update from phpMyFAQ 1.6.x to the current release is fairly simple. First you have to delete all files except:

- the files data.php and config.php in the directory inc/
- all files in the template/ directory

Open the following URL in your browser:

    http://www.example.com/faq/install/update.php

Choose your installed phpMyFAQ version and click the button of the update script, your version will automatically be updated.

back to top

3.d. Upgrading phpMyFAQ 2.0.x

Updating phpMyFAQ 2.0.x is fairly simple. Via FTP copy all new files from the phpMyFAQ package except:

- the files data.php in the directory inc/
- all files in the template/ directory

Open the following URL in your browser:

    http://www.example.com/faq/install/update.php

Choose your installed phpMyFAQ version and click the button of the update script, your version will automatically be updated.

You can find the changed files between the 2.0.x versions in the file docs/CHANGEDFILES.txt.

back to top

3.e. Modifying templates for phpMyFAQ 2.0.x

The 1.4.x and 1.5.x templates are partly compatible with phpMyFAQ 2.0.x, so you have to edit them and add some new placeholders for example for the captcha support and some other improvements. The 1.6.x templates are mostly compatible with phpMyFAQ 2.0, if your layout is completly based on CSS, you only have to change the .tpl files listed in docs/CHANGEDFILES.txt. If you need help to integrate phpMyFAQ into your website feel free to contact us.

back to top

4. Frontend

The phpMyFAQ frontend has a quite simple default layout. The header has the main links for the advanced search, add content, ask questions, open questions, help and contact. On the left side you see the main categories, the instant response page and the sitemap. You can also change the current language of the FAQ, use the search form or the login box if you have a valid user account. On the right side you see the Top 10 FAQ records and the five latest records. On the pages with the FAQ records you'll see the other records of the current category and the tagcloud if you're using tagging.

back to top

4.a.Change languages

As written above there's a select box for changing the current language. If you're visiting a phpMyFAQ powered FAQ, the current language will be the one you're browser is usring or the language which was selected by the administrator of the FAQ. If you change the language you'll see the categories and records of your chosen language. If there are no entries in this language you'll see no entries. If you're switching to languages with right to left text direction (for example Arabic, Hebrew or Farsi) the whole layout will be switching according to the text direction.

back to top

4.b. RSS Feeds

On the start page you can subscribe to three RSS feeds with the news of the FAQ, the Top 10 and the latest records available in the FAQ. On the page with the open user questions you can subscribe to the RSS feed with these questions. All feeds are compatible to the RSS 2.0 specification.

back to top

4.c. Advanced search

On the page with the advanced search you have more possibilities to find an entry. You can search over all language if you want to. It's alos possible to search only in one selected category. Additionally the link for the OpenSearch plugin is below the main search box.

back to top

4.d. Instant Response

The Instant Response is an Ajax-powered page with direct access to the whole FAQ database and the page will return the search results while you're typing into the input form. For performance reasons only the first 10 results will be displayed on the page. Please note that between every keypress there's a delay of 200ms.

back to top

4.e. Add content

On the add content page it's possible for all users to add a new FAQ record. The users have to add a FAQ question, select a category, add an answer, and they have to insert their name and e-mail address. If the spam protection is enabled they have to enter the correct captcha code, too. New FAQ entries won't be displayed and have to be activated by an administrator.

back to top

4.f. Ask questions

On the ask question page it's possible for all users to add a new question without an answer. The users have to add a question, select a category, and they have to insert their name and e-mail address. If the spam protection is enabled they have to enter the correct captcha code, too. By default new questions won't be displayed and have to be activated by an administrator.

back to top

4.g. Open questions

This page displays all open questions and it's possible for all users to add an answer for this question. The user will be directed to the add content page If the spam protection is enabled they have to enter the correct captcha code, too.

back to top

4.h. Submit translation

On every FAQ record page there's a select box for languages and a button to translate an existing FAQ record to another language. The translating user will be directed to a special add content page with the original entry and a stripped down WYSIWYG editor component. If the spam protection is enabled they have to enter the correct captcha code, too.

Please do not forget to add also a translated category, otherwise you won't be able to activate the translated entry.

back to top

4.i. Digg it!

On every FAQ record page there's a direct link to digg.com there you can submit the FAQ entry.

back to top

4.j. Internal references

For better usability there are some helpful links below every FAQ record. If the administrator added tags to the records they will be displayed next to five (or more) related articles. The related articles are based on the content of the current FAQ entry. On the right side you'll see links to all entries of the current category and the complete tag cloud of the whole FAQ.

back to top

5. Administration

The administration of phpMyFAQ is completely browser-based. The admin area can be found under this URL:

    http://www.example.com/faq/admin/index.php

If you have lost your password you can reset it. A new random password will be generated and sent to you via e-mail. Please change it after your successful login with the generated password.

After entering your username and password you can log into the system. On the startpage you can see the admin menu on the top, some statistics about visits, entries and comments in the middle of the page. At the bottom of the main admin page you'll see a button for version information. If you click on that button your version of phpMyFAQ will check the latest version number from our website www.phpmyfaq.de. We do not log anything in this process! You can switch the current language in the administration backend and you have an info box about the session timeout.

back to top

5.a. User Administration

phpMyFAQ 2 offers a flexible management of privileges (or rights) for different users in the admin area. It is possible to assign different priviledges to real people (represented by the term users). Those priviledges are very detailed and specific, so that you could allow a certain user to edit but not to delete an entry. It is very important to contemplate which user shall get which priviledges. You could edit an entry by completely deleting all content, which would be equivalent to deleting the whole entry. The number of possible users is not limited by phpMyFAQ.

Keep in mind that new users have no priviledges at all, you will have to assign them by editing the user's profile. The admin user cannot be deleted, nor can the name be changed.

A user without any permission in the admin section can still get read access to categories and records. You can set the permissions on categories and records in the category and record administration frontends.

back to top

5.b. Group Administration

phpMyFAQ 2 also offers a flexible management of privileges (or rights) for different groups in the admin area. You can set permissions for groups in the same way like for users described in the topic above.

Please note that the permissions for a group are higher rated than the permissions on a user.

back to top

5.c. Category Administration

phpMyFAQ lets you create different categories and nested sub-categories for your FAQ. You can also re-arrange your categories in a different order. It is possible to use varius languages per category, too; there's also a frontend about all translated categories. For accessibility reasons you should add a small description for every category. If you add a new category, you can set the permissions for users and groups, and you can bind an administrator to that category. This is quite nice if you want to share the work in your FAQ between various admin users.

back to top

5.d. Record Administration

You can create entries directly in the admin area. Created entries are NOT published by default. All available entries are listed on the page "edit FAQs". By clicking on them the same interface that lets you create records will open up, this time with all the relevant data of the specific entry. The meaning of the fields is as follows:

- Category
  The place in the FAQ hierarchy where this entry will be published depends on these settings. You can choose one or more categories where to store the entry. If you want to add a FAQ record to more than one category you have to select the categories with your mouse and press the CTRL key.
- Question
  This is the question or headline of your entry.
- Answer
  The content is an answer to the question or a solution for a problem. The content can be edited with the included WYSIWYG (What You See Is What You Get) editor when JavaScript is enabled. You can place images where you want with the integrated image manager. The editor provides the following key combinations:
  - CTRL-A - select all
  - CTRL-B - bold
  - CTRL-I - italic
  - CTRL-U - underline
  - CTRL-S - strikethrough
  - CTRL-L - justify left
  - CTRL-E - justify center
  - CTRL-R - justify right
  - CTRL-J - justify full
  - CTRL-1 .. CTRL-6 - headings (<h1> .. <h6>)
  - CTRL-0 (zero) - clean content pasted from Word
- Keywords
  Keywords are relevant for searching through the database. In case you didn't include a specific word in the entry itself, but it is closely related to the content you may wish to include it as a keyword, so the entry will come up as a search result. It is also possible to use non-related keywords so that a wrongly entered search will also lead to the right results.
- Tags
  You can add some tags about the current entry here. An Ajax-based auto-completion method helps you while typing your tags.
- Author
  It is possible to specify an author for your entry.
- E-Mail
  It is possible to specify the author's e-mail for your entry, but the e-mail address won't be shown in the frontend.
- Language
  You can select the language of your entry. By default the selected language saved in the configuration will be chosen. You can create entries in multiple languages like this: Write an article in English (or any other language) and save it. Now choose edit records and edit your English entry. Change the theme, content and keywords and change language to, let's say Brazilian portuguese. Save the entry. Now you can, when you click edit records, see both entries in your list, having the same id, yet different languages.
- Solution ID
  Every entry generates automatically a so-called solution ID. All records can be accessed directly by putting this ID into the search box.
- Active?
  If an entry is "active" it is visible in the public area and will be included in searches. Is it "deactivated" it will be invisible. Suggested entries are deactivated by default to prevent any abuse.
- Comments?
  If you do not want to allow public comments for this entry you can disable the feature here.
- Revsion
  Lika a wiki, phpMyFAQ 2 supports revisions of every entry. New revisions won't be created autmatically but you can create a new one if you click on "yes". The old revision will be stored in the database and the new current revision will be displayed in the public frontend. You can also bring back old revisions into the frontend if you select an old revision and save them as a new one.
- Permissions
  If you add or edit a new entry, you can set the permissions for users and groups.
- Record expiration time window
  If you need to you can set a time frame from one date to a second date when the FAQ entry should be valid and visible. Before and after this time frame the entry isn't visible and cannot be accessed.
- Date
  Date of the last change.
- Changed?
  This field is reserved for comments that can reflect what changes have been applied to a certain entry. This helps multiple admins to keep track of what happened to the entry over time. Any information entered here will remain invisible in the public area.
- Changelog
  The changelog lists all previous changes, including user and date of change.

You can edit and delete all records as well. Please note that old revisions won't be deleted.

phpMyFAQ lets visitors contribute to the FAQ by asking questions. Every visitor is able to view these open questions in the public area, and may give an answer. If you wish to get rid of open questions you can do so using this section. Alternatively you can take over a question and answer it yourself and hereby add it to the FAQ.

back to top

5.e. Comment Administration

In this straight frontend you can see all comments that have been posted in the FAQs and the news. You cannot edit comments but you can delete them with one easy click.

back to top

5.f. News Administration

phpMyFAQ offers the ability to post news on the starting page of your FAQ. In the administration area you can create new items, edit existing news or delete them.

back to top

5.g. Glossary

A glossary is a list of terms in a particular domain of knowledge with the definitions for those terms. You can add, edit and delete glossary items here. The items will be automatically displayed in <acronym> tags in the frontend.

back to top

5.h. Statistics

Below every entry visitors have the chance to rate the overall quality of an article by giving ratings from 1 to 5 (whereas 1 is the worst, 5 the best rating). In the statistics the average rating and number of votes becomes visible for every rated entry. To give you a quick overview entries with an average rating of 2 or worse are displayed in red, an average above 4 results in a green number.

View Sessions
This functions lets you keep track of your visitors. Every visitor is assigned an id when coming to your starting page, that identifies him during his whole visit. Using the information gathered here you could reconstruct the way visitors use your FAQ and make neccessary adjustments to your categories, content or keywords. There is also a search function that you can use to look for a certain IP, the number of minimum actions or the date of a visit.

View Adminlog
The adminlog allows you to track any actions taken by users in the admin area of phpMyFAQ. If you feel you have an intruder in the system you can find out for sure by checking the admin log.

back to top

5.i. Exports

You can export your contents of your whole FAQ or just some selected categories into four formats:

- a XML file
- a plain XHTML file
- a PDF file with a table of contents
- a DocBook XML file

back to top

5.j. Backup

Using the backup function it is possible to create a copy of the database to a single file. This makes it possible to restore the FAQ after a possible "crash" or to move the FAQ from one server to another. It is recommended to make regular backups of your FAQ.

- backup data
  A backup of all data will include all entries, users, comments, etc.
- backup logs
  The sessions of visits and the adminlog will be saved (i.e. all LOG files). This information is not necessary for running phpMyFAQ, they serve only statistical purposes.

back to top

5.k. Configuration

Here you can edit the general, the record and spam protection settings of phpMyFAQ. Should you want to enter multiple email addresses in the configuration separate them by a comma (",").

back to top

6. Customising phpMyFAQ 2.0.x

In phpMyFAQ 2.0.x code and layout are separated. The layout is based on several templates, that you can modify to suit your own needs. The most important files for phpMyFAQ's layout can be found in the directory template/. All original templates are valid XHTML 1.0 Transitional and we don't use tables for layout reasons.

Note: You can change the layout of the admin area using the CSS file admin.css.

back to top

6.a. The file template/index.tpl

The default layout of phpMyFAQ is saved in the index.tpl file. This is a normal HTML-file including some variables in curly brackets, serving as placeholders for content.

Example:

    <span class="useronline">{userOnline}</span>

The template-parser of the FAQ converts the placeholder {userOnline} to the actual number of visitors online.

You can change the template as you wish, but you may want to keep the original template in case something goes wrong. Theoretically you can use any editor for changing the templates, test using Dreamweaver were successful. Modifying the files with Microsoft Frontpage, Adobe GoLive or NetObjects Fusion may mess up the template, since they alter the source-code.

back to top

6.b. The file template/style.css

All formattings such as fonts and the like can be modified in the CSS-file style.css. The colors are defined in the file colors.css. More info can be found at the official W3C website.

back to top

6.c. More Templates

You need an other template design or more XHTML/CSS features? Then write us an email and we can talk about it.

back to top

7. One more thing

Thank you for using phpMyFAQ! :-)

Author: Thorsten Rinne
Co-Authors: Stephan Hochhaus, Markus Gläser
Last update: 2009-01-06

© 2001-2009 phpMyFAQ Team

This documentation is licensed under a Creative Commons License.

back to top