The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

faq - a web based FAQ builder

SYNOPSIS

# create a database called 'faq' in mysql

> mysqladmin create faq

# if you like ... create the faq FAQ

> mysql faq < faq.sql

# in apache httpd.conf

ScriptAlias /faq /path/to/faq/faq.pl
ScriptAlias /faqadmin /path/to/faq/faq.pl
<Location /faqadmin>
    AuthType Basic
    AuthUserFile /path/to/faq/faq.auth
    AuthName "FAQ Administration"
    require admin
</Location>

# if you want to have a seperate authorisation for the foo FAQ ...

<Location /faqadmin/foo>
    AuthType Basic
    AuthUserFile /path/to/faq/faq.auth
    AuthName "Foo FAQ Administration"
    require foo
</Location>

# if you want to be notified of any unanswered questions ...
# in crontab

0 9 * * 1-5 unanswered_questions.pl --email you@company.com --faq foo

DESCRIPTION

This is a simple CGI script for managing a web based FAQ. It uses mysql to store the questions and answers in the FAQ. It is pretty staightforward - basically, anyone can submit a new question through the "Add Question" form. There is also an admin user, that you should set up using HTTP authentication (see SYNOPIS).

You login as admin user by clicking on the "Login" button, and entering the authentication details that you have set up. The admin interface allows FAQ administrators to add or delete FAQs, answer questions, edit answers, or delete questions. If you want to set up different administrators on a per FAQ basis, you can do this because of the URL structure of the interface (see example in SYNOPSIS).

Included in the distribution is a utility script, unanswered_questions.pl, which you can use - for example using cron - to alert you of any unanswered questions in a particular FAQ.

SCRIPT CATEGORIES

CGI

PREREQUISITES

Template DBI DBD::Mysql CGI::Lite POSIX File::Spec

AUTHOR

Ave Wrigley <Ave.Wrigley@itn.co.uk>

COPYRIGHT

Copyright (c) 2001 Ave Wrigley. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.