Passare un vettore con querystring

  • Creatore Discussione Creatore Discussione wmdtg
  • Data di inizio Data di inizio

wmdtg

Nuovo Utente
6 Mag 2004
5
0
0
www.dituttogratis.com
Ciao a tutti,
ho il seguente problema:
in una pagina php si forma un vettore di molti elementi, tipo:

$personaggi=array("paperino","topolino","minni","pluto",...)

(diciamo un array con una trentina di elementi).

Ora, ho la necessità di passarlo ad un'altra pagina php possibilmente con una querystring, tipo:

<a href=pagina2.php?vettore=$personaggi>pagina2</a>

Se però lo faccio così come vedete, NON mi funziona (ho provato in vari diversi modi ma.. niente).

D'altra parte non mi è possibile farlo così:

<a href=pagina2.php?uno=paperino$due=topolino&tre=minni...>

perché verrebbe un link esageratamente lungo (e credo neanche funzionante oltre un tot di caratteri).

Quindi come fare?
Qui credo ci voglia un "guru" del php
 
ciao giovanni, non sono praticissimo col codice php, ma in teoria, secondo il tuo esempio, per recuperare topolino, dovresti far riferimento a

$personaggi[1]

se non ho colto... fammi sapere!

:byebye:
 
ciao Luca,
si, dovrei fare così se il vettore fosse passato dalla querystring come fosse una variabile qualunque. Il problema è che non è così.. non riesco a far "passare" il vettore con una querystring
 
Ciao,
prova a fare una cosa del genere:
PHP:
<?php
$personaggi = array('paperino', 'topolino', 'minni', 'pluto');
$count = count($personaggi) - 1;
$querystring = '';

for ($i = 0; $i <= $count; $i++)
{
	$querystring .= 'personaggi[]=' . $personaggi[$i] . '&';
}
$querystring = substr($querystring, 0, -1);

echo '<a href="pagina2.php?' . $querystring . '">pagina2</a>';
?>
E poi lo richiami (per esempio) con:
PHP:
<?php
$count = count($personaggi) - 1;

for ($i = 0; $i <= $count; $i++)
{
	echo $personaggi[$i] . '<br />';
}
?>
Non è molto elegante... ma funziona!
Bye
 
scusa, ma se ho capito bene così la quesrystring viene realizzata per intero.. il mio problema è che ho un array lunghissimo, troppo lungo per una querystring, per questo volevo usare un vettore che avesse in se tutte le informazioni.
Oppure non ho capito bene cosa volevi dirmi con questo script?
 
wmdtg ha scritto:
scusa, ma se ho capito bene così la quesrystring viene realizzata per intero.. il mio problema è che ho un array lunghissimo, troppo lungo per una querystring, per questo volevo usare un vettore che avesse in se tutte le informazioni.
Oppure non ho capito bene cosa volevi dirmi con questo script?

Con $_GET non ne esci fuori, in ogni caso dovranno passare in stringa i diversi valori.

Prova invece ad usare $_POST e a trasformare con un ciclo (tipo quello proposto da Jan) i diversi valori in altrattanti campi hidden.
 

Discussioni simili