Forum » Server-Side scripting » php operatoren
Berichten: 50
avatar
Offline Stuur privebericht
[code] [/code]Beste mensen hier ben ik met de volgende vraag.

ik heb twee invul velden
veld1 =getal1
veld2 =getal2

daaronder heb ik vier buttons button +,-,*,/

als ik in veld1 10 zet en in veld2 10 zet
en ik druk op + telt hij het al bij elkaar op.

maar nu, wil ik als je op - druk dat hij min gaat doen ik laat jullie de code zien tot hoever ik hem heb.

index.php
Code | Selecteer Alles
minimaliseren
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
38
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<
html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">

    <
head>
        <
title>Webdesign php opdracht</title>
        <
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <
link rel="stylesheet" type="text/css" href="css/style.css" />
    </
head>
<
body>

<
form action='verwerk.php' method='post'>
  <
table width=”80%” border=”1” >
    <
caption>
        <
strong>Som berekenen</strong>
    </
caption>
<
tr>
    <
tdGetal 1: </td>
    <
td> <input type="text" name="getal1" size="30" /> </td>
</
tr>

<
tr>
    <
tdGetal 2: </td>
    <
td> <input type="text" name="getal2" size="30" /> </td>
</
tr>


 </
table>
    <
br/>
    
Kies hier wat u wilt:<br/> optellen,aftrekkenvermenigvuldigen of delen.<br/>
    <
input type="submit" name="submit[]" value="+" />
    <
input type="submit" name="submit[]" value="-" />
    <
input type="submit" name="submit[]" value="x" />
    <
input type="submit" name="submit[]" value="/" />
</
form>

</
body>
</
html>


verwerk.php
Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">

    <head>
        <title>Webdesign php opdracht</title>
        <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
        <link rel="stylesheet" type="text/css" href="style.css" />
    </head>

<body>
Som is: 
<?php echo $_POST["getal1"];?>  <?php echo $_POST["submit"][0];?> <?php echo $_POST["getal2"];?><br>
De uitkomst is:
<?php $som =  $_POST["submit"]["0"] = $_POST["getal1"] + $_POST["getal2"];?>
<?php 
echo $som;?>

</body>
</html>


op de verwerk pagina zien julle onder: de som is de volgende code ik roep de som op de is ingevuld in veld1 en veld2 plus welke knop er is ingedrukt.

maar nu!! onder de uitkomst staat het belangrijke waar ik beetje vast loop.

ik heb er nu deze regels staan

Code | Selecteer Alles
minimaliseren
1
<?php $som =  $_POST["submit"] = $_POST["getal1"] + $_POST["getal2"];?>


ik dacht dus als ik nu de dezelfde code eronder zet maar dan de plus inplaats van de -. zie hier
Code | Selecteer Alles
minimaliseren
1
<?php $som =  $_POST["submit"] = $_POST["getal1"] - $_POST["getal2"];?>


dan doet ie alleen de - ook al druk je op de plus knop hij rekent dan telkens de min uit. wat ik dus wil weten is.

hoe krijg ik het voor elkaar als ik op de plus knop drukt dat hij de code leest voor de +

en zo ook voor de -,*,/

ik ben beginnende u hoeft mij niet de code er neer te zetten maar ik zou het fijn vinden als u mij opweg kunt helpen
29-09-2010 21:58
Dit topic is 519 keer bekeken door 67 verschillende leden
Reacties op: "php operatoren"
1 | 2 Volgende pagina
<?/ $me=Android ?>
Berichten: 1713
avatar
Offline Stuur privébericht
name="getal2" je name altijd andere waarden geven.
$_POST["getal2"] alsook voor je post.
29-09-2010 22:00
Berichten: 50
avatar
Offline Stuur privébericht
Quote: Maviose

name="getal2" je name altijd andere waarden geven.
$_POST["getal2"] alsook voor je post.



beste maviose,

ik heb nu zo

index.php
Code | Selecteer Alles
minimaliseren
1
2
3
4
5
Kies hier wat u wilt:<br/> optellen,aftrekkenvermenigvuldigen of delen.<br/>
    <
input type="submit" name="submit1" value="+" />
    <
input type="submit" name="submit2" value="-" />
    <
input type="submit" name="submit3" value="x" />
    <
input type="submit" name="submit4" value="/" />


verwerk.php

Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
Som is: 
<?php echo $_POST["getal1"];?>  <?php echo $_POST["submit1"];?>  <?php echo $_POST["getal2"];?><br>
<?php echo $_POST["getal1"];?>  <?php echo $_POST["submit2"];?>  <?php echo $_POST["getal2"];?><br>
De uitkomst is:
<?php $som =  $_POST["submit1"] = $_POST["getal1"] + $_POST["getal2"];?>
<?php $som 
=  $_POST["submit2"] = $_POST["getal1"] - $_POST["getal2"];?>
<?php 
echo $som;?>


het werkt nog niet helemaal

maar dan nog heb ik steeds de fout dat hij de plus nit meer leest:
29-09-2010 22:35
Webdeveloper & Programmeu
Berichten: 1000
avatar
Offline Stuur privébericht
Ik zou zelf persoonlijk werken via een switch vb.
Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?PHP
switch ($teken)
{
     case 
"+":
       
$getal $getal1 $getal2;
     break;

     case 
"-":
       
$getal $getal1 $getal2;
     break;

     case 
"*":
       
$getal $getal1 $getal2;
     break;

     case 
"/":
       
$getal $getal1 $getal2;
     break;
}
?>


Dit is een voorbeeld begin code voor de verwerking maar zal niet precies werken hoe jij het zou willen.
29-09-2010 22:40
Berichten: 50
avatar
Offline Stuur privébericht
Quote: Maviose

name="getal2" je name altijd andere waarden geven.
$_POST["getal2"] alsook voor je post.



ik heb het nu bijna voorelkaar. ik heb als ik een getal invoer zeg maar 20 en 20 en ik druk op de + knop word de uitkomst 40 maar als ik zeg maar 20 en 20 invoer en ik druk op de - knop doet ie nog steeds plus, als ik weet hoe dat moet kan ik het afmaken

Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
Som is: 
<?php echo $_POST["getal1"];?>  <?php echo $_POST["submit1"]["submit2"];?>  <?php echo $_POST["getal2"];?><br>
De uitkomst is:
<?php $som =  $_POST["submit1"] = $_POST["getal1"] + $_POST["getal2"];?>



<?php $som =  $_POST["submit2"] = $_POST["getal1"] + $_POST["getal2"];?>
<?php 
echo $som;?>
29-09-2010 22:45
Webdeveloper & Programmeu
Berichten: 1000
avatar
Offline Stuur privébericht
denk is logisch na en kijk wat je 2 keer doet
je doet getal1 + getal2 2 maal.

maar ik geef je ff 1 tip:

Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Som is:
if(isset(
$_POST['submit1']))
{
 
$som =  $_POST["getal1"] + $_POST["getal2"];
}
elseif(isset(
$_POST['submit2']))
{
 
$som =  $_POST["getal1"] - $_POST["getal2"];
}
elseif(isset(
$_POST['submit3']))
{
 
$som $_POST["getal1"] * $_POST["getal2"];
}
elseif(isset(
$_POST['submit4']))
{
 
$som =  $_POST["getal1"] / $_POST["getal2"];
}


ik denk dat je het zo makkelijker en beter leert.

ik zie ook dat je de versnelde traject if en else doet.
maar je moet het allebei wel goed kennen.
maar jou probleem is gewoon dat je bij submit2 gewoon het volgende moet doen:

Code | Selecteer Alles
minimaliseren
1
<?php $som =  $_POST["submit2"] = $_POST["getal1"] - $_POST["getal2"];?>


kijk goed wat ik heb veranderd de + naar -!
29-09-2010 23:56
R. Jipping
Berichten: 1596
avatar
Online Stuur privébericht
Ik zie dat niels het al heeft opgelosten. Ik wil nog een stukje op dat van Niels toevoegen probeer ook gebruik te maken van beveilings. Bijvoorbeeld Real Escape String.

Edit voor jannick: Excuses, schamend ik had het helemaal niet goed doorgelezen. Zie inderdaad de tips van jannick.
30-09-2010 00:02
nyan nyan nyan nyan
Berichten: 2076
avatar
Offline Stuur privébericht
@RiiCky Waarom mysql_real_escape_string gebruiken? Ik zie nergens een verbinding met een database; met strip_tags en htmlentities kom je er makkelijker, en hoef je geen MySQL-functies te gebruiken
30-09-2010 01:29
Webdeveloper & Programmeu
Berichten: 1000
avatar
Offline Stuur privébericht
Gebruik voor cijfer dan gewoon int en double sorry maar dat is nog veiliger dan als je dat gebruikt.
hoezo zou je een getal moet escapen of moet strippen?
gewoon kijken of het wel getal is wel belangrijker
30-09-2010 14:22
nyan nyan nyan nyan
Berichten: 2076
avatar
Offline Stuur privébericht
@NielsB: Van hardcoden is niet iedereen fan.. Het was maar een voorbeeld, en ik krijg het gevoel alsof de TS er weinig waarde aan hecht om iets veilig te doen.
30-09-2010 14:30
Rapifia Europe
Berichten: 3714
avatar
Offline Stuur privébericht
@Jannick,
Dat is dit niet
Gebruik gewoon dit:
is_integer(); Óf: is_numeric();

Dat werkt goed
Als je een string hebt (dus een reeks van getallen / letters) dan gebruik je strip_tags(); en als je een MySQL Update of MySQL Insert query erbij doet, doe je uiteraard mysql_real_escape_string() erbij.

Succes!

Lars
30-09-2010 19:03
Reageer op: "php operatoren"
1 | 2 Volgende pagina
Je kan niet reageren omdat je niet bent ingelogd. Inloggen of Aanmelden