2012. január 17., kedd

PHP - gyakorlat - összeadógép

A mai gyakorlatunk is nagyon egyszerű lesz. Egy összeadógépet fogunk készíteni, amely a megadott két adatot összeadja. Kezdjünk bele...

Az oldalunk így fog kinézni:
Ehhez, még a php-n kívül létre kell hoznunk egy formot.
<form method = "post" action="szam.php">
</form>

Az oldal neve szam.php legyen értelemszerűen.

Utána létre kell hoznunk 2 szövegmezőt, közöttük  jellel.


<input type = "text" name="elso"/> +
<input type = "text" name="masodik"/>

Majd egy submit gomb kell. = jel legyen rajta.

<input type = "submit" name="submit" value="="/>

Végül még egy szövegmező kell, ami csak olvasható.

<input readonly = "readonly" type = "text" name="eredmeny"/>

Most pedig áttérünk a php kódba ( a <?php és ?> között dolgozunk).

Elkészítjük a két érték változóit és értéket adunk nekik.


$elso = $_POST['elso'];
$masodik = $_POST['masodik'];

Ezzel az a gond, hogy mielőtt a submitra kattintok, ilyen elemek nincsenek a $_POST-ban. Ezért ez az egész csak akkor fut le, ha a submitra már rákattintottunk.


if(isset($_POST['submit']))
{
$elso = $_POST['elso'];
$masodik = $_POST['masodik'];
}

Ezzel be is fejeztük a php kódunkat. Ismét a formban dolgozunk. Most szeretnénk, ha kattintásra a csak olvasható szövegmezőben jelenjen meg az $elso + $masodik. A már tanult módon könnyen megoldható:


<input readonly = "readonly" type = "text" name="eredmeny" value="<?php if(isset($_POST['submit'])) {echo $elso + $masodik;}?>"/>

Az utolsó lépés az, hogy a submitra kattinva az értékek maradjanak meg. Ezt is a már tanult módon:


<input type = "text" name="elso" value="<?php if(isset($_POST['submit'])) {echo $elso;}?>"/> +

<input type = "text" name="masodik" value="<?php if(isset($_POST['submit'])) {echo $masodik;}?>"/>


A végeredmény pedig egy profi összeadógép :D. Persze könnyen szorzógépet csinálhatunk belőle... 
A teljes kód:

<html>
<body>
<?php
if(isset($_POST['submit']))
{
$elso = $_POST['elso'];
$masodik = $_POST['masodik'];
}
?>
<form method="post" action="szam.php">
<input type = "text" name="elso" value="<?php if(isset($_POST['submit'])) {echo $elso;}?>"/> + 
<input type = "text" name="masodik" value="<?php if(isset($_POST['submit'])) {echo $masodik;}?>"/>
<input type = "submit" name="submit" value="="/>
<input readonly = "readonly" type = "text" name="eredmeny" value="<?php if(isset($_POST['submit'])) {echo $elso + $masodik;}?>"/>

</form>
</body>
</html>





1 megjegyzés: