2009-11-09 7 views
0

J'ai un formulaire qui capture des données envoyées à partir d'une API google LocalSearch. L'utilisateur a la possibilité de sélectionner un résultat spécifique, certains ou tous les résultats via une case à cocher que j'injecte dans le formulaire avec jQuery. La valeur de case à cocher ressemble à quelque chose comme ceci:Interprétation PHP des données sérialisées jQuery

title=Emijean+Web+Design+and+Management&streetAddress=63+James+St.&city=Parry+Sound&region=ON 

Donc, si j'avais plusieurs cases à cocher, ils seraient tous contiennent des données similaires et la valeur de poste pour les cases à cocher addToDb [] serait un tableau complet de ce qui précède.

Quelle est la meilleure façon de capturer ces données avec mon script PHP? Je peux le comprendre en utilisant foreach, explode, etc. mais je suis sûr qu'il doit y avoir un moyen de désérialiser une chaîne javascript en utilisant PHP qui est plus efficace.

Toutes les idées sur la façon dont je pourrais obtenir un résultat similaire à:

array(
    [0] => array(
    title => "Emijean Web Design and Management" 
    streetAddress => "63 James St." 
    city => "Parry Sound" 
    region => "ON" 
) 
) 

Merci tout le monde.

Répondre

4

C'est un format querystring - vous pouvez utiliser parse_str():

$values = array(); 
parse_str($str, $values); 
+0

Merci knoopx, vous avez raison aussi. J'ai aimé avoir un exemple de Greg. C'est parfait. – jay

1

Qu'est-ce que vous avez besoin est parse_str:

http://php.net/manual/en/function.parse-str.php

parse_str("title=Emijean+Web+Design+and+Management&streetAddress=63+James+St.&city=Parry+Sound&region=ON"); 
print_r(get_defined_vars()); 

sorties

Array 
(
    [title] => Emijean Web Design and Management 
    [streetAddress] => 63 James St. 
    [city] => Parry Sound 
    [region] => ON 
) 
Questions connexes