Błąd w skrypcie,linia 41


(Lomp) #1

to jest plik do formularza który jest przekazywany metodą get, dlaczego wyskakuje błąd w 41 linii?

<?php

$iloscopon = $_POST['iloscopon'];

$iloscoleju = $_POST['iloscoleju'];

$iloscswiec = $_POST['iloscswiec'];

?>

Części samochodowe Janka

Wyniki zamówienia

<?php echo ' Zamówienie przyjęte o: '; //początek wydruku echo date ('H:i. jS F'); echo ''; ?> <?php echo ' Państwa zamówienie wygląda następująco: '; echo $iloscopon. ' opon '; echo $iloscoleju. ' butelek oleju '; echo $iloscswiec. ' świec zapłonowych '; ?> <?php $ilosc = 0; $ilosc = $iloscopon + $iloscoleju + $iloscswiec; echo 'Zamówionych części: '.$ilosc.' ; $wartosc = 0.00; define("CENAOPON", 400); define("CENAOLEJU", 100); define("CENASWIEC", 20); $wartosc = $iloscopon * CENAOPON + $iloscoleju * CENAOLEJU + $iloscswiec * CENASWIEC; echo 'Cena netto: '.number_format($wartosc, 2).' PLN '; $stawkavat = 0.22; //stawka vat wynosi 22% $wartosc = $wartosc * (1 + $stawkavat); echo 'Cena brutto: '.number_format($wartosc, 2).' PLN ; ?>[/code]


(adpawl) #2

brak było apostrofu zamykającego w liniach:

btw

filtruj dane otrzymywane przez _POST


(Lomp) #3

dzięki :slight_smile:

chodzi o sprawdzanie poprawności wprowadzonych danych?

narazie jestem jeszcze na dosyć wczesnym poziomie programowania w php :slight_smile: mam nadzieję, że dojdę do tego.


(L337 Crew) #4

można to tak nazwać ...

Przykładowo jak masz

$iloscopon = $_POST['iloscopon'];

to zapewne oczekujesz wartości liczbowej ... W Twoim kodzie można tutaj wprowadzić dowolną wartość, dzięki czemu można włamać się na stronę :slight_smile: Ponieważ jak wspomniałem - wartość liczbowa -

$iloscopon = intval($_POST['iloscopon']);

funkcja intval sprawdza czy ciąg jest liczbą, jeśli nie - jako wartość przyjmuje 0.

Jeżeli chciałbyś np. napisać księgę gości czy coś tego typu -

oczekiwałbyś ciągu znaków.

W takim wypadku po nieprzefiltrowaniu danych wejściowych - można dopisać złośliwy kod javascript itd.

Np. przekierowanie na moją stronę :slight_smile:

By temu zapobiec - stosuje się np. strip_tags() .

btw. czyżbyś się uczył z tej książki?


(Lomp) #5

dzięki L337 Crew :slight_smile:

uczę się z tej: http://helion.pl/ksiazki/phmsv3.htm :slight_smile:

Pozdrawiam.