phpbar.de logo

Mailinglisten-Archive

[php] filter_input

[php] filter_input

Jens Vetter vetter at creative-minds.de
Die Jul 17 13:02:38 CEST 2007


Hi Sebastian,

danke für Deine Antwort ....


Am 17.07.2007 um 12:20 schrieb Sebastian Mendel:

> $test = filter_input(INPUT_POST, 'test', FILTER_VALIDATE_INT,
>     array('wert1' => $options));

passiert leider nichts.



Zu filter_iput_array:

Ich verstehe das so, dass man das Array im Beispiel $args übergibt,  
damit man filter_input nicht
mehrfach aufrufen muss, sondern das gesamte Formular mit einem Mal  
prüfen kann - oder ???

Bsp:

$args = array(
     'product_id'   => FILTER_SANITIZE_ENCODED,
     'component'    => array('filter'    => FILTER_VALIDATE_INT,
                             'flags'     => FILTER_FLAG_ARRAY,
                             'options'   => array('min_range' => 1,  
'max_range' => 10)
                            ),
     'versions'     => FILTER_SANITIZE_ENCODED,
     'doesnotexist' => FILTER_VALIDATE_INT,
     'testscalar'   => array(
                             'filter' => FILTER_VALIDATE_INT,
                             'flags'  => FILTER_FLAG_SCALAR,
                            ),
     'testarray'    => array(
                             'filter' => FILTER_VALIDATE_INT,
                             'flags'  => FILTER_FLAG_ARRAY,
                            )

);

$myinputs = filter_input_array(INPUT_POST, $args);

Nun nochmal zu meinem Problem:

So sieht meine Form aus:

<form action="search.html" method="post">
	<input type="radio" name="produkte_pi3[searchtyp]" value="1aasd" />  
Messer
	<input type="radio" name="produkte_pi3[searchtyp]" value="2" /> Klingen
	<input type="radio" name="produkte_pi3[searchtyp]" value="3" /> Zubehör
	<input type="hidden" name="produkte_pi3[searchterm]" value="maxi" />
	<input type="submit" name="produkte_pi3[changeTyp]"  
value="Abschicken" />
</form>

$options = array('options'=> array('min_range'=>1, 'max_range'=>3));
$test = filter_input(INPUT_POST, 'produkte_pi3[searchtyp]',  
FILTER_VALIDATE_INT, $options);
                             -->   -----------------------

if ($test === FALSE) {
	echo "fehler";
} else {
	echo "alles gut";
}


Ich möchte gerne produkte_pi3[searchtyp] prüfen und dann auch  
filtern. Mein Problem ist, dass
produkte_pi3[searchtyp] nicht erkannt wird und ich den Variablennamen  
in andere Schreibweise an
filter_input übergeben muss.



Gruss, Jens.



php::bar PHP Wiki   -   Listenarchive