Scripts
Multiple choice class
Met deze multiple choice klasse kun je eventjes snel een vragenlijst (denk aan een quiz of een usability-test) in elkaar zetten. De klasse geeft als output overzichtelijke HTML die op de goede plaatsen inspringt. Gebruik: Het gebruik is eigenlijk heel simpel. Je kunt hem in een bestaand formulier integreren: Maar je kunt hem ook zelf een heel nieuw formulier aan laten maken. Dit doe je om de constructor (in tegenstelling tot daarnet) wél in te vullen met gegevens: Als iemand nog foutjes ontdekt, dan hoor ik het wel :c)
multiple-choice-class
De onderstaande klasse in voor [b]PHP 5[/b] en zal niet werken op PHP 4 systemen:
[code]<?php
class multipleChoice {
public $form = false;
const NL = "\r\n";
public function __construct($action = '', $method = 'post', $extra = null) {
if (isset($action) == true && strlen($action) > 0) {
echo '<form action="' .$action. '" method="' .$method. '"';
if ($extra != null)
echo ' ' .$extra. '>' . self::NL;
else
echo '>' . self::NL;
$this->form = true;
}
}
public function addCategory($category) {
echo '<h3 class="subtitle">' .$category. '</h3>' . self::NL;
}
public function addOption($option) {
echo ' <option value="' .$option. '">' .$option. '</option>' . self::NL;
}
public function addQuestion($question, $arguments = false) {
if ($arguments != false) {
echo ' <p>' .$question. '</p>' . self::NL;
echo ' <select name="multipleChoise">' . self::NL;
for ($i = 0; $i < count($arguments); $i++)
$this->addOption($arguments[$i]);
echo ' </select>' . self::NL;
echo ' <br /> <br />' .self::NL . self::NL;
}
else
echo $question;
}
public function addSubmit($name = null, $value = null, $extra = null) {
echo ' <input type="submit" name="' .$name. '" value="' .$value. '" ';
if ($extra != null)
echo $extra. ' />' . self::NL;
else
echo '/>' . self::NL;
echo '</form>' . self::NL . self::NL;
}
public function addTitle($title) {
echo '<h1 class="title">' .$title. '</h1>' . self::NL;
}
public function close($name = null, $value = null, $extra = null) {
if ($this->form == true && $name != null && $value != null) {
$this->addSubmit($name, $value, $extra);
}
}
}
?>[/code]
De onderstaande code is voor [b]PHP 4[/b] en zal eveneens werken op PHP 5 systemen:
[code]<?php
define('NL', "\r\n");
class multipleChoice {
var $form = false;
function multipleChoice($action = '', $method = 'post', $extra = null) {
if (isset($action) == true && strlen($action) > 0) {
echo '<form action="' .$action. '" method="' .$method. '"';
if ($extra != null)
echo ' ' .$extra. '>' . NL;
else
echo '>' . NL;
$this->form = true;
}
}
function addCategory($category) {
echo '<h3 class="subtitle">' .$category. '</h3>' . NL;
}
function addOption($option) {
echo ' <option value="' .$option. '">' .$option. '</option>' . NL;
}
function addQuestion($question, $arguments = false) {
if ($arguments != false) {
echo ' <p>' .$question. '</p>' . NL;
echo ' <select name="multipleChoise">' . NL;
for ($i = 0; $i < count($arguments); $i++)
$this->addOption($arguments[$i]);
echo ' </select>' . NL;
echo ' <br /> <br />' .NL . NL;
}
else
echo $question;
}
function addSubmit($name = null, $value = null, $extra = null) {
echo ' <input type="submit" name="' .$name. '" value="' .$value. '" ';
if ($extra != null)
echo $extra. ' />' . NL;
else
echo '/>' . NL;
echo '</form>' . NL . NL;
}
function addTitle($title) {
echo '<h1 class="title">' .$title. '</h1>' . NL;
}
function close($name = null, $value = null, $extra = null) {
if ($this->form == true && $name != null && $value != null) {
$this->addSubmit($name, $value, $extra);
}
}
}
?>[/code]
Als iemand nog foutjes ontdekt, dan hoor ik het wel :c)
Reacties
0