salve,
avrei questo quesito da porvi:
è possibile inviare un array tramite metodo get? (naturalmente da php nn da html)
cioè esiste una cosa tipo page.php?var=ARRAY e ARRAY e un array che gli passo io?
Grazie mille.
salve,
avrei questo quesito da porvi:
è possibile inviare un array tramite metodo get? (naturalmente da php nn da html)
cioè esiste una cosa tipo page.php?var=ARRAY e ARRAY e un array che gli passo io?
Grazie mille.
PHP 4 EverErrare e' umano, ma per fare veramente casino serve la password di root.
Coltiva Linux........Tanto windows si impianta da solo!!!!!
beh per la get nn c'è bisogno di passarlo da indirizzoOriginariamente inviato da Mix
salve,
avrei questo quesito da porvi:
è possibile inviare un array tramite metodo get? (naturalmente da php nn da html)
cioè esiste una cosa tipo page.php?var=ARRAY e ARRAY e un array che gli passo io?
Grazie mille.
kmq lo hai gia provato a passare??
si, ho provato, vi passo i due codici di esempio così inquadrate il problema.
Codice PHP:
<?php
echo $_GET['ar']['test'];
?>quello che ottengo chiamando il secondo è una A.Codice PHP:
<?php
$ar = array(
test => 'lol',
baw => 'mwe'
);
$htm = file_get_contents( 'http://www.freedigiland.net/mf/in.php?ar='.$ar );
echo $htm."_".$ar;
?>
PHP 4 EverErrare e' umano, ma per fare veramente casino serve la password di root.
Coltiva Linux........Tanto windows si impianta da solo!!!!!
Stai facendo due errori in uno:Originariamente inviato da Mix
si, ho provato, vi passo i due codici di esempio così inquadrate il problema.
Codice PHP:
<?php
echo $_GET['ar']['test'];
?>quello che ottengo chiamando il secondo è una A.Codice PHP:
<?php
$ar = array(
test => 'lol',
baw => 'mwe'
);
$htm = file_get_contents( 'http://www.freedigiland.net/mf/in.php?ar='.$ar );
echo $htm."_".$ar;
?>
1) non puoi fare
echo $questoarray;
Perchè ti stamperà solo una scritta che dice "Array"; se vuoi stampare ogni elemento di un array devi dire:
foreach($questoarray as $elemento):
echo $elemento;
endforeach;
2) se vuoi passare un array sulla get, devi sia serializzarlo sia codificarlo per la url:
pippo.php?array=<?=urlencode(serialize($questoarra y));?>
e poi per riceverlo:
$questoarray=unserialize(urldecode($_GET["array"]));
Ciao!
"Le uniche cose che sbagli sono quelle che non provi a fare."
Atipica
beh ti ringrazio pure io visto che nn lo sapevoOriginariamente inviato da Shores
Stai facendo due errori in uno:
1) non puoi fare
echo $questoarray;
Perchè ti stamperà solo una scritta che dice "Array"; se vuoi stampare ogni elemento di un array devi dire:
foreach($questoarray as $elemento):
echo $elemento;
endforeach;
2) se vuoi passare un array sulla get, devi sia serializzarlo sia codificarlo per la url:
pippo.php?array=<?=urlencode(serialize($questoarra y));?>
e poi per riceverlo:
$questoarray=unserialize(urldecode($_GET["array"]));
Ciao!
ciao ciao
salve raga, io ho provato, il passaggio di codifica avviene perfettamente e anche l'invio, ma ho dei problemi nella ricezione, nel senso che una volta che l'ho deserializzato nn mi rimane niente........
mi sapete dire il xè?
PHP 4 EverErrare e' umano, ma per fare veramente casino serve la password di root.
Coltiva Linux........Tanto windows si impianta da solo!!!!!
Posta la url della pagina e il codice con cui leggi l'array...
"Le uniche cose che sbagli sono quelle che non provi a fare."
Atipica
in.php
out.phpCodice PHP:
<?php
print unserialize($_GET['ar']);
$arr = unserialize(urldecode($_GET['ar']));
foreach($arr as $elemento):
echo $elemento;
endforeach;
?>
out invia un array a in, se volete provarli questo è l'indirizzo out.phpCodice PHP:
<?php
$ar = array(
test => 'lol',
baw => 'mwe'
);
$htm = file_get_contents( 'http://www.freedigiland.net/mf/in.php?ar='.urlencode(serialize($ar)));
echo $htm."_".urlencode(serialize($ar));
?>
dovrebbe venire stampato
e invece hoArraylolmwe__a%3A2%3A%7Bs%3A4%3A%22test%22%3Bs%3A3 %3A%22lol%22%3Bs%3A3%3A%22baw%22%3Bs%3A3%3A%22mwe% 22%3B%7DWarning: Invalid argument supplied for foreach() in /var/www/diwe0068/mf/in.php on line 4
_a%3A2%3A%7Bs%3A4%3A%22test%22%3Bs%3A3%3A%22lol%22 %3Bs%3A3%3A%22baw%22%3Bs%3A3%3A%22mwe%22%3B%7D
PHP 4 EverErrare e' umano, ma per fare veramente casino serve la password di root.
Coltiva Linux........Tanto windows si impianta da solo!!!!!
in.php
out.phpCodice PHP:
<?php
$arr = unserialize(urldecode($_GET['ar']));
foreach($arr as $elemento):
echo $elemento."
";
endforeach;
?>
Così dovresti ottenere quello che volevi, ma secondo me non hai le idee molto chiare: la $_GET contiene i parametri che passi sulla url con cui carichi la pagina in.php, per cui se non crei un link che punti a in.php con dentro dei parametri, nulla viene passato...Codice PHP:
<?php
$ar = array(
test => 'lol',
baw => 'mwe'
);
echo "<a href=\"in.php?ar=".urlencode(serialize($ar))."\">Clicca qui<A/>";
?>
In ogni caso, tieni presente di ricordare che non è una buona idea passare sulla GET parametri sofisticati o cose che potrebbero essere sfruttate per hackerare il tuo sito: sulla get andrebbero passati solo codici, numerici o non, che vengano SEMPRE prima di tutto verificati per appartenere ad una precisa lista, e rifiutati se non vi appartengono.
In più, ho l'impressione che tu non abbia capito che usando la file_get_contents tu vai a leggere il contenuto di un file come se fosse una semplice stringa di testo, e NESSUN CODICE PHP DEL FILE CHE VAI A LEGGERE VIENE MAI ESEGUITO. Se vuoi che il codice dell'altro file venga eseguito, devi usare la include, che esegue il codice dell'altro file per poi riprendere con la riga successiva del file in cui è inserita la include stessa; in questo caso, però, tutte le variabili che avevi definito nelle righe prima della include sono AUTOMATICAMENTE disponibili nel file incluso, senza bisogno di fare nessun passaggio di dati di nessun genere.
"Le uniche cose che sbagli sono quelle che non provi a fare."
Atipica
il problema è il seguente, io devo passare ad una pagina di un mio sito dei dai post e coockie presenti dul mio secondo sito, in partica devo creare una falsa pagina che ti fà sembrare che la pagina index.php sia sul sito 2 e nn sull'1. Per questo tentavo di inviare i dati tramite get xè è l'unico modo con cui riesco a passarli. Se hai un altra soluzione? io ti avviso che èuna cosa a livello php, l'html nn centra quindi niente link.....
PHP 4 EverErrare e' umano, ma per fare veramente casino serve la password di root.
Coltiva Linux........Tanto windows si impianta da solo!!!!!