Hallo iedereen! Ik zit nu in vwo 5, en moet voor informatica een webapplicatie bouwen, waarmee basisschoolleerlingen kunnen oefenen met (hoofd)rekenen.

een aantal eisen waar het aan moet voldoen:
- de gebruiker kan kiezen uit 3 verschillende moeilijkheidsgraden: makkelijk (rekensommen tot 20), gemiddeld (rekensommen tot maximaal 100) en moeilijk (rekensommen tot 1000)
- Afhankelijk van gekozen moeilijkheidsgraad krijgt de gebruiker een willekeurig optelsom aangeboden, samen met een formulier waarin de gebruiker het antwoord kan invullen.
- De gebruiker krijgt te zien of zijn antwoord goed/fout was.
- Na ieder antwoord krijgt de gebruiker de keuzemogelijkheid om door te gaan of te stoppen
- wanneer de gebruiker stopt met de applicatie dan krijgt de gebruiker, afhankelijk van het aantal goede antwoorden een cijfer voor haar/zijn prestaties.

gebruikersinterface:
moet bestaan uit een aantal webpagina's (en PHP-scripts) met minimaal:
- een formulier waar de moeilijkheidsgraad kan worden gekozen
- een webpagina, waarop een willekeurige optelsom wordt aangeboden, samen met de mogelijkheid om het antwoord in te vullen.
- een php-script, dat controleert of het antwoord goed is, samen met de mogelijkheid om stoppen/doorgaan aan te geven.
- bij beëindiging een webpagina met een cijfer.


Ik heb een beginnetje voor het formulier waar de moeilijkheidsgraad mee gekozen wordt.

<?php
$moeilijkheidsgraad = $_POST["moeilijkheidsgraad"];
if ($moeilijkheidsgraad == "makkelijk")
{
print(" - PAGINA - ");
}
elseif ($moeilijkheidsgraad == "gemiddeld")
{
print(" - PAGINA - ");
}
else
{
print(" - PAGINA - ");
}
?>

maar geen idee of ik wel een pagina in een php script kan toevoegen of hoe ik dat aan moet pakken, want volgens mij kun je alleen een php script in een xhtml code zetten en niet andersom? als jullie suggesties hebben, graag!
bij voorbaat dank!

Groetjes, Anne
je kan PHP embedden in een HTML-document. Je moet er alleen voor zorgen dat je pagina goed blijft valideren.
Je kunt een pagina includen:

<?php
$moeilijkheidsgraad = $_POST["moeilijkheidsgraad"];

if ($moeilijkheidsgraad == "makkelijk") {
  include('pagina1.php');
}
elseif ($moeilijkheidsgraad == "gemiddeld") {
  include('pagina2.php');
}
else {
  include('pagina3.php');
}
?> 


Of redirecten naar de juiste pagina:

<?php
$moeilijkheidsgraad = $_POST["moeilijkheidsgraad"];

if ($moeilijkheidsgraad == "makkelijk") {
  header('location: pagina1.php');
}
elseif ($moeilijkheidsgraad == "gemiddeld") {
  header('location: pagina2.php');
}
else {
  header('location: pagina3.php');
}
?> 

Let er bij het gebruik van [php]header[/php] op dat je dit toepast VOOR alle ouput (helemaal bovenaan je pagina waarschijnlijk), anders krijg je een "headers already sent" error.

Edit: Typo


ik vraag om 'mijn calculator v1.php' die ze hier dan op hun
home host server draaien --> reacties.
ik bied, dat is dan voor v2,

http://www.jankoehoorn.nl/
had 'tafels van tien oefenen voor kinderen (effe checken)'.

- visualisatie, met oog voor de kwetsbare leden vd doelgroep
- structuur vd reken.sessie: vervolgens ..
1 script, geen include
- eerst de kern, m.graad, beo (en tijdsmeting) voor later.

groetjes, Antoon.


<?php
    define ('NEWLINE', "\n");
    
    if ($_SERVER['REQUEST_METHOD'] == 'POST') {
        $x = $_POST['x'];
        $y = $_POST['y'];
        $uitkomst = $_POST['uitkomst'];
        $ingevuld = $_POST['ingevuld'];
        
        if (!is_numeric ($ingevuld)) {
            $melding = 'Je hebt geen getal ingevuld!';
        }
        else {
            if ($uitkomst == $ingevuld) {
                $melding = 'Dat is goed. Ga zo door!';
                $x = mt_rand (1, 10);  //make digit
                $y = mt_rand (1, 10);
                $uitkomst = $x * $y;
                unset ($ingevuld);
            }
            else {
                $melding = 'Probeer het nog eens?';
            }  } }
    else {
        $x = mt_rand (1, 10);
        $y = mt_rand (1, 10);
        $uitkomst = $x * $y;
    }
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="nl">  <head>  <title> Koehoorn IT </title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <script language="javascript" type="text/javascript" src="microapi.js"></script>
    <script language="javascript" type="text/javascript">
        window.onload = init;
        
        function init () {
            var _ingevuld = new getObj ('ingevuld');
            _ingevuld.obj.blur ();  // anders werkt het niet in Opera
            _ingevuld.obj.focus ();
            _ingevuld.obj.select ();
        }
    </script>

<link href="phphulp.css" rel="stylesheet" type="text/css" media="screen">
    <style>      
 table.tafels {  margin-left: 64px;  }       
 table.tafels td {
            border: 1px solid #ccc;
            border-collapse: separate;
            padding: 3px;
            width: 48px;
            height: 32px;
            font: bold 24px arial;
            text-align: center;  }
        
 td.groen {  background: #cfc;  }
 td.rood {  background: #f00;  }
 td.blauw {  background: #99f; }
        
 p.opgave {   margin-left: 64px;  font: bold 24px arial;   } 
 input.ingevuld {   font: bold 24px arial;    width: 64px;   }  
</style>    </head>
        
<body>  <div id="container">
<p align="right">Ga naar het <a href="index.php">code-overzicht</a></p>
<h2>Voor kinderen: de tafels van een tot en met tien oefenen</h2>   <p>  </p>
        
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<input id="x" name="x" type="hidden" value="<?php echo $x; ?>">
<input id="y" name="y" type="hidden" value="<?php echo $y; ?>">
<input id="uitkomst" name="uitkomst" type="hidden" value="<?php echo $uitkomst; ?>">

            <table class="tafels">
            
<?php
                    for ($i = 0; $i <= 10; $i++) {
 echo NEWLINE . '<tr>';
                        for ($j = 0; $j <= 10; $j++) {
                            if ($i == 0 && $j == 0) {
     echo '<td>&nbsp;</td>';
                            }
                            elseif ($i == 0) {
                                if ($j == $y) {
     echo '<td class="blauw">' . $j . '</td>';
                                }
                                else {
       echo '<td class="groen">' . $j . '</td>';
                                }
                            }
                            elseif ($j == 0) {
                                if ($i == $x) {
echo '<td class="blauw">' . $i . '</td>';
                                }
                                else {
echo '<td class="groen">' . $i . '</td>';      }  }
 else {   if ($i == $x && $j == $y) {
      echo '<td class="rood">&nbsp</td>';   }
  else {   echo '<td>&nbsp</td>';     }   }   }  echo '</tr>';  }
?>

</table>    
<p class="opgave">

<?php  echo $x . ' maal ' . $y . ' =';
?>
                
<input id="ingevuld" name="ingevuld" type="text" maxlength="3" class="ingevuld"      
  value="<?php echo $ingevuld ; ?>  ">
<input id="controleer" name="controleer" type="submit" value="ff sjekken">
                
<?php if (isset ($melding)) {  echo $melding; }
?>

            </p>  </form> </div>
  <div id="code">
        <h3>De code:</h3>
<?php $deze_pagina = basename ($_SERVER['PHP_SELF']);  highlight_file ($deze_pagina);
?>
    </div>   </body>  </html> 




Hey Anne,

Ik heb voor school precies dezelfde opdracht gekregen.
Ik snap er net zou als jij 4 jaar geleden geen hol van.
Heb jij heel misschien deze opdracht nog en zou is deze dan mogen?
Alvast heel erg bedankt!!
Anne heeft 1 bericht geplaatst op phphulp; vier jaar geleden.
Daarna niets meer van vernomen, zelfs geen reactie op haar vraag :(
Verwacht dan ook niet dat er nu nog een reactie volgt.

Reageren