php-kod o polu

robin5hood
Użytkownik
Użytkownik
Posty: 1676
Rejestracja: 2 kwie 2007, o 14:43
Płeć: Mężczyzna
Lokalizacja: warszawa
Podziękował: 178 razy
Pomógł: 17 razy

php-kod o polu

Post autor: robin5hood »

Kod: Zaznacz cały

<?php

$wAx = $_GET['wAx'];
$wBx = $_GET['wBx'];
$wCx = $_GET['wCx'];
$wAy = $_GET['wAy'];
$wBy = $_GET['wBy'];
$wCy = $_GET['wCy'];
$w=abs(($wAx*$wBy + $wAy*$wCx + $wBx*$wCy - $wCx*$wBy - $wCy*$wAx - $wBx*$wAy)/2) ;
print '<form action= "wynik.php" method=get>';
print 'Wpisz tekst do pola formularza<br>';
print 'wierzchołekA' ;
print '<input type="text" name="wAx">';
print '<input type="text" name="wAy"><br>';
print 'wierzchołekB' ;
print '<input type="text" name="wBx">';
print '<input type="text" name="wBy"><br>';
print 'wierzchołekC' ;
print '<input type="text" name="wCx">';
print '<input type="text" name="wCy"><br>';
print '<input type="submit" value="Licz">';
print '<form>'; 


?>
co musze napisać w wynik.php aby w tym pliku wyświetlało sie pole tego trójkąta????
Awatar użytkownika
eloar
Użytkownik
Użytkownik
Posty: 106
Rejestracja: 18 cze 2007, o 16:59
Płeć: Mężczyzna
Lokalizacja: Kobyłka
Podziękował: 8 razy
Pomógł: 12 razy

php-kod o polu

Post autor: eloar »

Czy nie lepiej zamieścić to w jednym pliku, który i policzy i wyświetli formularz?

1) znacznie lepiej będzie przesłać metodą POST dane. Po co oglądać je w adresie?
2) dodaj pole hidden do formularza o jakiejś nazwie. Pole takie będzie wskazywać, że formularz został wysłany i trzeba policzyć dane.

Tak więc:

Kod: Zaznacz cały

<?php


if($_GET['sent']=='1')
{
    $wAx = $_GET['wAx'];
    $wBx = $_GET['wBx'];
    $wCx = $_GET['wCx'];
    $wAy = $_GET['wAy'];
    $wBy = $_GET['wBy'];
    $wCy = $_GET['wCy'];
    $w=abs(($wAx*$wBy+$wAy*$wCx+$wBx*$wCy-$wCx*$wBy-$wCy*$wAx-$wBx*$wAy)/2) ;
    print 'wynik $w';
}
else
{
    print '<form action= "wynik.php" method=get>';
    print 'Wpisz tekst do pola formularza<br>';
    print 'wierzchołekA' ;
    print '<input type=\"hidden\" name=\"sent\" value=\"1\">';
    print '<input type="text" name="wAx">';
    print '<input type="text" name="wAy"><br>';
    print 'wierzchołekB' ;
    print '<input type="text" name="wBx">';
    print '<input type="text" name="wBy"><br>';
    print 'wierzchołekC' ;
    print '<input type="text" name="wCx">';
    print '<input type="text" name="wCy"><br>';
    print '<input type="submit" value="Licz">';
    print '<form>';
}
?>
Czy mi sie tylko zdaje, czy przypadkiem cudzysłowy w print powinny być poprzedzone backslash'em?

Nie weryfikowałem Twojego kodu, tylko przerobiłem go tak, aby działał. Jeśli jest błąd w funkcji liczącej na przykład, to na pewno go nie widziałem :).
robin5hood
Użytkownik
Użytkownik
Posty: 1676
Rejestracja: 2 kwie 2007, o 14:43
Płeć: Mężczyzna
Lokalizacja: warszawa
Podziękował: 178 razy
Pomógł: 17 razy

php-kod o polu

Post autor: robin5hood »

A co mam wpisać w wynik.php ,bo wpisałem

Kod: Zaznacz cały

<?php
print "Pole trojkata o wprowadzonych współrzędnych wynosi: " ; print $_GET ['w'] ;
?>
i nie wyświetla żadnego wyniku. Co muszę zmienić?
Awatar użytkownika
eloar
Użytkownik
Użytkownik
Posty: 106
Rejestracja: 18 cze 2007, o 16:59
Płeć: Mężczyzna
Lokalizacja: Kobyłka
Podziękował: 8 razy
Pomógł: 12 razy

php-kod o polu

Post autor: eloar »

a sprawdziles kod, ktory podalem?

Jesli chcesz miec formularz i wynik w jednym pliku, to najlepiej jak skorzystasz z if else i pola hidden. Pole hidden bedzie ustawione wtedy i tylko wtedy, gdy formularz zostanie wyslany. Poza tym nie ma pola, ktore nazywa sie w formularzu. Jest za to zmienna lokalna $w, ktorej wartosc wyliczana jest na podstawie pol z formularza.
robin5hood
Użytkownik
Użytkownik
Posty: 1676
Rejestracja: 2 kwie 2007, o 14:43
Płeć: Mężczyzna
Lokalizacja: warszawa
Podziękował: 178 razy
Pomógł: 17 razy

php-kod o polu

Post autor: robin5hood »

już sobie poradziłem
Awatar użytkownika
eloar
Użytkownik
Użytkownik
Posty: 106
Rejestracja: 18 cze 2007, o 16:59
Płeć: Mężczyzna
Lokalizacja: Kobyłka
Podziękował: 8 razy
Pomógł: 12 razy

php-kod o polu

Post autor: eloar »

No to świetnie. Mam nadzieje, że nieco w tym pomogłem:D.
ODPOWIEDZ