2010-02-05 17 views
13

Tengo una matriz de Javascript decir jsArr[]. Quiero que esta matriz se pase a una página php a través del método get. Algo así como nextPage.php?arr=jsArr[].

Hay que debería ser capaz de acceder a la matriz como $arr[] = $_GET[arr] y realizar operaciones como foreach($arr as $key => $val)

¿Es posible ...?

Muchas gracias por adelantado ...

Respuesta

10

necesita cambiar su URL a ser:

nextPage.php?arr[]=js&arr[]=js2 

por ejemplo.

var_dump($_GET); 

salidas: array(1) { ["arr"]=> array(2) { [0]=> string(2) "js" [1]=> string(3) "js2" } }

+0

¿Debería obtenerlo como "$ _GET [arr]" en la página php ...? – SpikETidE

+0

@SpikETidE: Sí. –

+3

Técnicamente, '$ _GET ['arr']'. Funcionará sin comillas porque PHP trata estúpidamente las constantes desconocidas como cadenas sin comillas, pero nunca se debe confiar en ellas. http://us3.php.net/manual/en/language.constants.syntax.php –

0

Una forma de lograr esto sería jQuery's serialize()

+0

No se puede usar camisetas su complemento ... no quiero enviar una forma completa ... solo necesito pasar esta matriz ... – SpikETidE

18

También puede utilizar JSON (JS analizador here)

JS:

var arr = [1, 4, 9]; 
    var url = '/page.php?arr=' + JSON.stringify(arr); 
    window.location.href = url; 

PHP:

$arr = isset($_REQUEST['arr']) ? json_decode($_REQUEST['arr']) : array(); 
Cuestiones relacionadas