Qualche anima pia mi aiuterebbe?

Per parlare di film, ritrovi, concerti (non riguardanti sigle) o qualsiasi altra cosa

Moderatori: Gohan, Haranban, Opelmanta, Lunlun

Rispondi
Tetsuya Tsurugi
Messaggi: 12929
Iscritto il: gio 31 lug 2003, 15:03
Contatta:

Qualche anima pia mi aiuterebbe?

Messaggio da Tetsuya Tsurugi »

Ecco il problema... sto tentando di muovere i primissimi passi col PHP, e dovrei capire come fare a passare dei valori in modo che compongano una stringa, in questa maniera:

http://xxx/stringa.php?g=105,228,248,355,586,610,674,679,848,858,888

Devo cioè far sì che magari da una maschera o dei menu a tendina (ma poi quello lo faccio da solo) sia possibile selezionare undici valori che vanno a posizionarsi dopo "g="...

Chi mi aiuta? :roll:
Che cos'è il genio? È fantasia, intuizione, colpo d'occhio e velocità di esecuzione
(cit. Arch. Rambaldo Melandri & Giorgio Perozzi)

Immagine
Avatar utente
Tarrasque
Messaggi: 12887
Iscritto il: gio 13 feb 2003, 10:26

Messaggio da Tarrasque »

Dunque, presumo che tu voglia usare PHP per un'applicazione web.

Saprai perfettamente, immagino, che la stringa "g=" è detta query string ed è il parametro che il browser di un utente restituisce al server quando "manipoli" una pagina di tipo form (quelle con le varie tendine bottoncini eccetera).

In pratica, la stringa viene composta SULLA MACCHINA dell'utente, NON sul server (su cui gira la tua applicazione PHP).

E' quindi qualcosa che devi comporrere "client side", utilizzando JavaScript, per valorizzare un controllo di tipo:

Codice: Seleziona tutto

<input type="hidden" value="la-tua-stringa" name="g"></input>
Quando l'utente poi preme il tasto "submit" la stringa "g=...", qualsiasi essa sia, viene sparata al server.

Almeno se ho capito bene quello che chiedevi...
4/4/1978. Io c'ero.
Immagine
Avatar utente
Tarrasque
Messaggi: 12887
Iscritto il: gio 13 feb 2003, 10:26

Messaggio da Tarrasque »

Se invece non puoi/vuoi usare JavaScript questo è un possibile workaround:

Supponiamo tu abbia il form più o meno così (esempio con 3 parametri invece che 13):

Codice: Seleziona tutto

<form action="elabora.php">
   <input name="par_1"/>
   <input name="par_2"/>
   <input name="par_3"/>
</form>
la pagina "elabora.php" riceve il form con i vari parametri, tutti passati SINGOLARMENTE nella query string (es.: "elabora.php?par_1=x&par_2=y&par_3=z")

in elabora.php metti:

Codice: Seleziona tutto

newQueryString = implode("," $_GET);
header("Location: http://www.xxx/stringa.php?g=" . newQueryString);
La prima riga compone una stringa a partire da un'array di valori (la variabile built in $_GET è un'array contenente tutti i valori passati da un form attraverso il metodo GET; se utilizzi il metodo POST hai a disposizione i valori della corrispondente variabile $_POST).

La seconda riga pa un redirect alla pagina "vera" in cui devi elabirare la stringa che ti serviva all'inizio.

Ovviamente tutto questo funziona se non hai altri parametri nel form di partenza E se non dai nessun nome al bottone di submit (altrimenti viene passato anche questo, ovviamente, nella variabile $_GET).

P.S. sono possibili piccoli errori di sintassi negli esempi qui sopra che sto facendo al momento. ;););)
4/4/1978. Io c'ero.
Immagine
Avatar utente
freinkie
Messaggi: 9814
Iscritto il: mer 30 mar 2005, 2:17

Messaggio da freinkie »

se passi i valori tramite form ti ritrovi le variabili gia' settate

altrimenti se fai qualcosa tipo http://www.cippalippa.it/string.php?gnugna=1

nel codice php metti

$coda=$QUERY_STRING;

dove $coda diventa appunto "gnugna=1"
Immagine
Avatar utente
Tarrasque
Messaggi: 12887
Iscritto il: gio 13 feb 2003, 10:26

Messaggio da Tarrasque »

sì, ma questa cosa non gli "implode" tutte le variabili in una sola stringa coi valori separati da virgola, che mi pareva fosse il succo del problema...
4/4/1978. Io c'ero.
Immagine
Tetsuya Tsurugi
Messaggi: 12929
Iscritto il: gio 31 lug 2003, 15:03
Contatta:

Messaggio da Tetsuya Tsurugi »

Grazie ad entrambi per l'aiuto... vedrò di tirarne fuori qualcosa di buono :)

Cmq Tarra, hai capito perfettamente il problema (e non c'era dubbio che fosse così :wink: )
Che cos'è il genio? È fantasia, intuizione, colpo d'occhio e velocità di esecuzione
(cit. Arch. Rambaldo Melandri & Giorgio Perozzi)

Immagine
Rispondi