Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%)
|
Opakowałem sobie funkcje filtrów w klasę Filter. Zdziwiłem się testują ponieważ zarówno klasa jak i zwykłe funkcje zwracają mi wartość null.
Kod testowy: Odpowiedź: Cytat null Przypuszczam że funkcje filter_* nie pobierają danych bezpośrednio z tablic super-globalnych. Jak w takim razie mam przetestować te funkcje, unikając pisania formularza do nich?null null null array 'product_id' => string 'libgd<script>' (length=13) - To pytanie wynika bardziej z ciekawości niż ogromnej komplikacji, bo i tak zaraz napiszę formularz testowy. (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) edit> No tak jak myślałem. Przez formularz, funkcje odpowiadają poprawnie. Ten post edytował orglee 20.10.2008, 20:11:59 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 246 Pomógł: 31 Dołączył: 13.11.2006 Skąd: się znamy? Ostrzeżenie: (0%)
|
|
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%)
|
Mistrzu... Przecież to dokładnie to samo co ja zrobiłem, żeby przypisać wartość do pola super-globalnej tablicy $_POST, tylko że inaczej zapisane. Poza tym test zerżnąłem z manual'a PHP. http://pl2.php.net/manual/pl/function.filter-input-array.php
Edit: Sprawdź sobie czy może klasa korzysta z $HTTP_POST_VARS albo co jeszcze gorzej z register globals Cytat /* data actually came from POST $_POST = array( 'product_id' => 'libgd<script>', 'component' => '10', 'versions' => '2.0.33', 'testscalar' => array('2', '23', '10', '12'), 'testarray' => '2', ); */ I tak jak napisałem w pierwszym poście. Moja klasa Filter to tylko obiektowe opakowanie wbudowanych w PHP (od 5.2) funkcji filter_* ( np. filter_input ) Wszystko mi zaczęło działać kiedy do testowania wykorzystałem prosty formularz, wysyłający jedno pole metodą post. Stąd moja ciekawość. W jaki sposób funkcje filter_* dostają się do wartości z tablic super-globalnych. Skoro funkcja nie widzi wartości zmiennej, jeśli ją przypiszę wewnątrz skryptu. Czyli na przykład tak jak podał empathon. |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 246 Pomógł: 31 Dołączył: 13.11.2006 Skąd: się znamy? Ostrzeżenie: (0%)
|
Przecież to dokładnie to samo co ja zrobiłem, żeby przypisać wartość do pola super-globalnej tablicy $_POST, tylko że inaczej zapisane. Przyjrzyj się dokładniej. To co robiłeś może w tym wypadku ma ten sam efekt ale różnica jest znacząca (czepiam się). http://pl2.php.net/manual/pl/function.filt...array.php#84299 http://pl2.php.net/manual/pl/ref.filter.php#71898 |
|
|
|
orglee [filter_input] Problem z użyciem 20.10.2008, 20:01:09
pinochet Czy ja jestem ślepy?Czy nie zamiesciles kodu klasy... 20.10.2008, 21:52:03
orglee A po co? Moje pytanie nie dotyczy klasy tylko funk... 21.10.2008, 00:58:42
Mize Drugi argument jest raczej podstawiany w metodzie ... 21.10.2008, 15:54:40
orglee Dobra linki do komentarzy pomogły, ten aspekt już ... 21.10.2008, 16:43:05
empathon To tak jakbys przy zmianie prezydenta wybijal cala... 21.10.2008, 17:43:13 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 22:10 |