HTML FORM if statement

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mikey Van den Berghe

Mikey Van den Berghe

09/01/2014 11:29:11
Quote Anchor link
Hallo,
Ik probeer een inkomsten script te maken. Hierbij typt men hun inkomen in en wordt het modaal berekend. Ik heb nu dit, maar het werkt niet en kom er niet aan uit. Zou gaarne hulp krijgen.

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
<html>
<head>
<title>Bereken je modaal</title>
</head>
<body>
<?php
echo "<script type=\"text/javascript\">\n";
echo "var inkomen = prompt('Wat is uw inkomen?');\n";
echo "</script>\n";
if (inkomen >= 1 && inkomen <= 30000){
        alert('Slaris is modaal');
    }

elseif (inkomen >= 30001 && inkomen <= 60000){
        alert('Slaris is 2x modaal');
    }

elseif (inkomen >= 60001){
        alert('Slaris is 3x modaal');
    }

else{
        alert('Geen inkomen');
    }

?>

</body>
</html>


Graag in het vervolg bij code, [code] [/code] tags gebruiken.[/modedit]
Gewijzigd op 09/01/2014 11:29:59 door Bas IJzelendoorn
 
PHP hulp

PHP hulp

08/11/2024 21:35:33
 
Michael -

Michael -

09/01/2014 11:30:36
Quote Anchor link
Je haalt PHP en Javascript door elkaar. Is dat ook de bedoeling?

Toevoeging op 09/01/2014 11:35:19:

Zo zou het in PHP kunnen
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
<h2>Wat is uw inkomen?</h2>
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST'){

    if ($_POST['inkomen'] >= 1 && $_POST['inkomen'] <= 30000){
            echo 'Salaris is modaal';
    }

    else if ($_POST['inkomen'] >= 30001 && $_POST['inkomen'] <= 60000){
            echo 'Salaris is 2x modaal';
    }

    else if ($_POST['inkomen'] >= 60001){
            echo 'Salaris is 3x modaal';
    }

    else{
            echo 'Geen inkomen';
    }
}

?>

<form method="POST">
<input type="text" name="inkomen"><button>Check</button>
</form>


En zo zou je het in Javascript kunnen doen
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
<script>
var inkomen = prompt('Wat is uw inkomen?');
if (inkomen >= 1 && inkomen <= 30000) {
    alert('Slaris is modaal');
}
else if (inkomen >= 30001 && inkomen <= 60000) {
    alert('Slaris is 2x modaal');
}
else if (inkomen >= 60001) {
    alert('Slaris is 3x modaal');
}
else{
    alert('Geen inkomen');
}
</script>
Gewijzigd op 09/01/2014 11:39:09 door Michael -
 
Mikey Van den Berghe

Mikey Van den Berghe

09/01/2014 11:43:34
Quote Anchor link
Ik ben nog een beginner en heb van verschillende bronnen wat informatie gesprokkeld. Ik heb de code aan de praa gekregen als ik zelf een waarde voor $inkomen invul. Echter, ik wil dus dat de gebruiker een tekstvlak gebruikt om in te vullen wat hun inkomen is, Via deze link : http://www.dev-hq.net/javascript/4--if-else-and-user-input ben ik een beetje aan de slag gegaan daarmee, maar het wil helaas nog niet baten.

Ah, enorm veel dank die eerste code werkt :)!
Gewijzigd op 09/01/2014 11:45:16 door Mikey Van den Berghe
 
Michael -

Michael -

09/01/2014 11:53:13
Quote Anchor link
De link die je geeft verwijst ook duidelijk naar Javascript en je doet overkomen alsof je PHP wil gebruiken. Let daar dus even op bij het zoeken. Succes!
 
Willem vp

Willem vp

09/01/2014 11:58:32
Quote Anchor link
Even afgezien van de code vind ik de logica ook niet helemaal kloppen. Een inkomen van 1 euro is niet modaal. En een inkomen van 30001 is echt niet 2x modaal.

Overigens is die 30000 euro ook verouderd; dat was het modale inkomen een jaar of 10 geleden. Tegenwoordig is het iets van 33500, geloof ik.

Ik zou het zelf ongeveer als volgt coderen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$modaal
= 33500;
$inkomen = $_POST['inkomen'];
echo 'Salaris is ', round($inkomen/$modaal, 1), 'x modaal';
?>
 



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.