Webbserverprogrammering 1

Källkod

Välj en PHP-fil för att visa dess källkod.

exercises/form8.php

<?php
require_once __DIR__ . '/../incl/form_helpers.php';
function 
form8_medelvarde($a, $b, $c)
{
    return (
$a + $b + $c) / 3;
}
$values = array();
$error = '';
if (
$_SERVER['REQUEST_METHOD'] === 'POST') {
    foreach (array(
'tal1', 'tal2', 'tal3') as $key) {
        if (isset(
$_POST[$key]) && is_numeric($_POST[$key])) {
            
$values[] = (float) $_POST[$key];
        }
    }
    if (
count($values) !== 3) {
        
$error = 'Skriv in tre giltiga tal.';
    }
}
form_page_start('Uppgift 8 – Medelvärde på samma sida');
?>
<h1>Uppgift 8 – Formulär och svar på samma sida</h1>
<form action="form8.php" method="POST">
  <label for="tal1">Tal 1</label><input id="tal1" name="tal1" type="number" step="any" required value="<?php echo isset($_POST['tal1']) ? form_h($_POST['tal1']) : ''; ?>">
  <label for="tal2">Tal 2</label><input id="tal2" name="tal2" type="number" step="any" required value="<?php echo isset($_POST['tal2']) ? form_h($_POST['tal2']) : ''; ?>">
  <label for="tal3">Tal 3</label><input id="tal3" name="tal3" type="number" step="any" required value="<?php echo isset($_POST['tal3']) ? form_h($_POST['tal3']) : ''; ?>">
  <button type="submit">Beräkna</button>
</form>
<?php if ($_SERVER['REQUEST_METHOD'] === 'POST') { ?>
  <?php if ($error !== '') { ?><p class="error"><?php echo form_h($error); ?></p>
  <?php } else { ?>
    <p>Talen är <?php echo form_h(implode(', ', $values)); ?>.</p>
    <p>Medelvärdet är <?php echo form_h(form8_medelvarde($values[0], $values[1], $values[2])); ?>.</p>
  <?php } ?>
<?php 
} ?>
<?php form_page_end
(); ?>