Fòrums

Passant la matriu multidimensional JS a PHP

Me1000

Cartell original
Jul 15, 2006
  • Feb 3, 2009
Publicat sense fil (Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_2 com Mac OS X; en-us) AppleWebKit/525.18.1 (KHTML, com Gecko) Versió/3.1.1 Mobile/5G77 Safari/525.20)

Tinc una matriu multidim en Javascript
Codi: |_+_| Necessito passar la matriu a PHP (utilitzant probablement una trucada Ajax)
Tinc el marc jquery carregat per treballar-hi.

Quina seria la millor manera de passar la matriu a PHP?

Gràcies

angelwatt

Moderador emèrit
16 d'agost de 2005
USA


  • Feb 3, 2009
Pots detallar la longitud i el tipus d'informació de la matriu per a ambdues dimensions? Podria donar-nos algunes idees sobre el millor enfocament.

Addició: Uns petits fragments. L'exemple utilitza una matriu de 2x3.
PHP: |_+_|

Me1000

Cartell original
Jul 15, 2006
  • Feb 3, 2009
Tots dos dims contenen una petita cadena de text.
El primer és un nom de fitxer.
El segon és un títol per al fitxer que s'anomena al primer dim.

Demà miraré més el teu codi, gràcies per l'ajuda!
:poma:

angelwatt

Moderador emèrit
16 d'agost de 2005
USA
  • Feb 4, 2009
Me1000 va dir: Tots dos dims contenen una petita cadena de text.
El primer és un nom de fitxer.
El segon és un títol per al fitxer que s'anomena al primer dim.

Demà miraré més el teu codi, gràcies per l'ajuda!
:poma:

Mentre aquestes cadenes no continguin comes, crec que el meu codi hauria de donar un bon començament. No he proporcionat tot el que necessiteu, però si necessiteu més orientació o aclariment, feu-m'ho saber.

A més, si algú més té idees, no dubteu a compartir-les. Acabo de posar la primera idea que em va sorgir.

Me1000

Cartell original
Jul 15, 2006
  • Feb 4, 2009
Vaig poder veure gent fent servir comes al subtítol...

angelwatt

Moderador emèrit
16 d'agost de 2005
USA
  • Feb 4, 2009
Me1000 va dir: Vaig poder veure gent fent servir comes al subtítol...

Hmm, bona trucada. Aleshores, una alternativa és separar els valors de la matriu utilitzant alguna cosa que no sigui la coma. Per tant, caldria crear una funció nova per utilitzar-la en lloc de la funció toString() que uneix els elements de la matriu. Potser utilitzeu '|' o algun caràcter d'ús poc habitual o podeu utilitzar un parell de caràcters, per exemple, '|@|'. Aleshores, al PHP, quan esclateu la cadena, introduïu quins caràcters heu utilitzat com a separador.

És una cosa que pots fer o necessites orientació?

Me1000

Cartell original
Jul 15, 2006
  • Feb 4, 2009
D'acord, això és el que em va ocórrer...
Codi: |_+_|
Passo la cadena a al fitxer php

Codi: |_+_| Potser no és el meu codi final per enviar-lo al fitxer php, però ara mateix és el més fàcil de treballar.

el problema és,
la meva URL sembla una cosa així:
Codi: |_+_|
Aquesta part 'indefinida' al principi està causant un problema en analitzar les dades.

Alguna idea de per què passa això?

quan truco
Codi: |_+_| mostra el resultat correcte, així que sé que la meva matriu original és bona

angelwatt

Moderador emèrit
16 d'agost de 2005
USA
  • Feb 4, 2009
Sí, al vostre bucle for teniu cadena = cadena + ..., però la cadena no es declara la primera vegada. Just abans del bucle for quan declareu la variable de cadena, poseu-la igual a '' perquè tingui un valor inicial.

A més, probablement necessitareu un bucle doble ja que voleu treballar amb una matriu multidimensional.

Me1000

Cartell original
Jul 15, 2006
  • Feb 4, 2009
reverència!

Gràcies per la teva ajuda.


El codi javascript final amb el qual vaig acabar, per a aquells que estigueu interessats:

Codi: |_+_|

savar

6 de juny de 2003
Districte de Columbia
  • Feb 4, 2009
Sembla que ho heu descobert, però potser també vulgueu fer una mica de recerca sobre JSON.

JSON (Javascript Object Notation) us permet codificar objectes javascript en una notació compacta que es pot enviar per cable. La majoria dels altres idiomes tenen biblioteques per analitzar aquest JSON en objectes natius. Estic segur que si ho investigueu us farà una millor idea del que vull dir.