Twee forms in 1 pagina

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Robert Bergen

Robert Bergen

07/11/2017 21:02:39
Quote Anchor link
Hallo, ik loop een beetje vast. Ik ben bezig met een permutaties en combinaties rekenmachine in 1 pagina te stoppen. Ik heb 2 submits knoppen. Hoe kan ik ervoor zorgen dat als ik op het eerste knopje druk de faculteit wordt berekend, en als ik op het tweede knopje druk de combinatie wordt berekend?

Dit is de code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Permutaties en combinaties</title>
</head>
<body>
<?php
    $getal1
= $_POST ['getal1'];
    $faculteit = 1;
    $n = $_POST ['n'];
    $r = $_POST ['r'];

    for ($x=$getal1; $x>=1 ; $x--) {
        $faculteit = $faculteit * $x;
    }


    if (strlen($getal1) > 0) {
    echo "De faculteit van " . $getal1 . " is " . $faculteit;
    }


    define (NaN,acos(1.01));

    function
nCr($n,$r){
        if ($r > $n)
          return NaN;
           if (($n-$r) < $r)
          return nCr($n,($n-$r));
          $return = 1;
           for ($i=0;$i < $r;$i++){
              $return *= ($n-$i)/($i+1);
       }

    return $return;
}

?>

</body>
</html>


- Ariën -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 07/11/2017 21:05:09 door - Ariën -
 
PHP hulp

PHP hulp

30/11/2024 00:55:22
 
- Ariën  -
Beheerder

- Ariën -

07/11/2017 21:27:08
Quote Anchor link
Je kan met isset() kijken welke knop is ingedrukt!
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
if($_SERVER['REQUEST_METHOD']=="POST") {
    if(isset($_POST['faculteit'])) {
        // bereken faculteit
    } elseif(isset($_POST['combinatie'])) {
        // bereken combinatie
    } else {
        // onbestaande keuze!
    }
}

?>
 
Frank Nietbelangrijk

Frank Nietbelangrijk

08/11/2017 00:29:41
Quote Anchor link
side note:

Dan moet je de knoppen wel een name attribuut geven.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<button type="submit" name="faculteit">Faculteit</button>
<button type="submit" name="combinatie">Combinatie</button>


side note 2: isset() controleert of een bepaalde variabele bestaat. Buttons waarop geklikt wordt en een name attribuut hebben worden mee verstuurd met de formulier data.

Om je POST array te debuggen gebruik je:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if($_SERVER['REQUEST_METHOD']=="POST") {
    echo '<pre>'.print_r($_POST, true).'</pre>';
}

?>

Verder zou het leuk zijn als je een reactie terug geeft of het gelukt is ja of nee en hoe op je vorige topic ;-)
Gewijzigd op 08/11/2017 00:31:04 door Frank Nietbelangrijk
 
Thomas van den Heuvel

Thomas van den Heuvel

08/11/2017 16:20:18
Quote Anchor link
Of je scheid de acties:
- tonen formulier
- verwerken actie #1
- verwerken actie #2
- ... etc ...
op een andere manier dan een if-elseif-else statement maar breng je deze bijvoorbeeld onder in aparte methoden of zelfs aparte PHP-bestanden. Op die manier kun je waarschijnlijk beter het overzicht bewaren en dingen beter in afzondering behandelen.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.