GRY-Online.pl --> Archiwum Forum

PHP zadanko

14.02.2011
20:31
[1]

Andruskill [ Megajebutron ]

PHP zadanko

Zastanawia mnie jak w PHP zrobić coś takiego aby po wpisaniu danych do odpowiednich miejsc wyskakiwał wynik[nigdy nie potrafiłem tłumaczyć o co mi chodzi..]. Mianowicie mam zadanie obliczyć pole dajmy na to trójkąta wprowadzając dane. Myślałem gdyby dać actiona i inputa ale niezbyt wiem jak zdefiniować type oraz jak zdefiniować tam zmienną. Tak więc proszę o pomoc.

14.02.2011
22:03
[2]

maviozo [ man with a movie camera ]

Nie jest to nic trudnego. Tworzysz sobie formularz html:
<form action="zadanie.php" method="post">
Bok (a):<input type="text" name="bok" />
Wysokość (h):<input type="text" name="wysokosc" />

<input type="submit" value="Obliczaj!" />
</form>

I z punktu widzenia html to tyle.

Teraz na przykład po tym formularzu chcesz wyświetlać wynik:

<?php

if (isset($_POST['bok'])&&isset($_POST['wysokosc']))‹ #1
    echo "Wynik tego działania to: ".(0.5*(float)$_POST['bok']*(float)$_POST['wysokosc']); #2
    ›
?>

i wytłumaczenie:
#1 sprawdzasz, czy w $_POST są Twoje zmienne. Zauważ, że to tablica asocjacyjna i każdy element odpowiada formularzowi wysłanemu z metodą post. Zatem jeżeli użytkownik wpisze 5 w formularz o nazwie bok, to w $_POST['bok'] masz 5 itp.
#2 to po prostu działanie na zmiennych. (float) to rzutowanie typów. Oczywiście skrypt powinien być bardziej idiotoodporny, np. wyświetlając ostrzeżenie, że użytkownik wpisał słowa, zamiast cyfer i nie podejmować próby obliczania.

14.02.2011
22:20
[3]

Andruskill [ Megajebutron ]

Dziękuję niezmiernie. Druga część rozwiała moje wątpliwości. Pobawie się jeszcze troche z else w razie gdyby ktoś zostawił puste pole bądź próbował innych trików. Jeszcze raz dzięki wielkie.

© 2000-2024 GRY-OnLine S.A.