Tralasciando se invi i dati urlencodati con jquery e invii questo
Codice:
abc=123&def=456&ghi=789
il codice dovrebbe essere questo (per il primo script)EDIT:Ho effettuato un invio da un form in php
Codice PHP:
<?php
$trans = array('+' => '', '-' => '');
$ajax_data='abc='.strtr(filter_input(INPUT_POST, 'abc',FILTER_SANITIZE_NUMBER_INT ),$trans);
$ajax_data.='&def='.strtr(filter_input(INPUT_POST, 'def',FILTER_SANITIZE_NUMBER_INT ),$trans);
$ajax_data.='&ghi='.strtr(filter_input(INPUT_POST, 'ghi',FILTER_SANITIZE_NUMBER_INT ),$trans);
echo($ajax_data); // Stampo a titolo di debug
parse_str($ajax_data, $dati);
print_r($dati, $ajax_data); //quando arriva qui non stampa più nulla.
?>
preciso subito che non funziona dopo che finisce da parse_str(). $_POST è una matrice multidimensionale autoglobale non una variabile! filter_input() come secondo parametro accette una stringa, pero esiste filter_input_array() per gli array. Spero che qualcuno porti buone nuove. edit tolgo pure i caratteri + e -.perché fanno parte di un intero con segno, inoltre per per essere un intero si deve ricontrollare perché 010 non è un intero ma numerico. Lo scrivo a titolo informativo perchi leggera