Hallo pl,
daran habe ich bis gerade gebastelt. Sag's nicht meinem Chef 😉
An meinen Onlinespace komm ich von hier nicht ran, darum muss ich es posten:
PHP Testseite - kein vorbildliches PHP, kein vorbildliches HTML, nur als kleiner, Ajax-agnostischer Testrahmen. Zeigt 3 Eingabefelder und einer Checkbox. Je nach gepostetem Wert von op werden die Eingaben zu 1000 addiert oder von 1000 subtrahiert. Die Checkbox ist funktionslos, dient nur zum Spielen für Default-Button im Eltern-Element. Die Seite funktioniert ohne ajaxforms.cs ganz normal als Affenformular.
<?php
class RequestData {
public $Value1;
public $Value2;
public $Value3;
public $IsOk;
public $Result;
public function getValue(int $n) {
switch ($n) {
case 1: return $this->Value1;
case 2: return $this->Value2;
case 3: return $this->Value3;
default: return 0;
}
}
}
if ($_SERVER['REQUEST_METHOD'] == 'GET')
$data = handleGet();
else
$data = handlePost();
function handleGet()
{
$data = new RequestData();
$data->Value1 = 0;
$data->Value2 = 0;
$data->Value3 = 0;
$data->IsOk = false;
$data->Result = '';
return $data;
}
function handlePost() {
$data = new RequestData();
$data->Value1 = isset($_POST['value1']) ? intval($_POST['value1']) : 0;
$data->Value2 = isset($_POST['value2']) ? intval($_POST['value2']) : 0;
$data->Value3 = isset($_POST['value3']) ? intval($_POST['value3']) : 0;
$data->IsOk = false;
if (isset($_POST['op']) && $_POST['op'] == "add")
$data->Result = 1000 + $data->Value1 + $data->Value2 + $data->Value3;
else
$data->Result = 1000 - ($data->Value1 + $data->Value2 + $data->Value3);
return $data;
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Ajax Test</title>
<style>
label {
display: block;
}
label span {
display: inline-block;
width: 5em;
}
label output {
display: inline-block; whitespace:pre:
}
</style>
<script src="ajaxforms.js"></script>
</head>
<body>
<h1>Dein Taschenrechner <?=time()?></h1>
<form method="POST">
<fieldset><legend>Los geht's</legend>
<?php for ($i=1; $i<4; $i++): ?>
<label>
<span>Wert <?=$i?>:</span>
<input autocomplete="off" type="tExt" name="value<?=$i?>" id="input<?=$i?>" data-submitBtn="<?=$i==2?"btnSub":"btnAdd"?>" value="<?=$data->getValue($i)?>">
</label>
<?php endfor; ?>
<label data-submitBtn="btnSub">
<span>Alles ok?</span>
<input type="checkbox" name="ok" id="cbOk" value="<?=$data->IsOk?>">
</label>
<label class="updatePanel" id="ergebnis"><span>Ergebnis:</span><output><?=$data->Result?></output></label>
<button type="submit" id="btnAdd" name="op" value="add">Addieren</button>
<button type="submit" id="btnSub" name="op" value="sub">Subtrahieren</button>
</fieldset>
</form>
</body>
</html>
Rolf
--
sumpsi - posui - clusi
sumpsi - posui - clusi