devo passare il seguente campo hidden, tramite form:
<input type=\"hidden\" name=\"risposta[]\" value=\"$risposta\">
nella pagina successiva:
$risposta = $_POST["risposta"];
come posso estrarre i dati dei singoli valori dell'array?
devo passare il seguente campo hidden, tramite form:
<input type=\"hidden\" name=\"risposta[]\" value=\"$risposta\">
nella pagina successiva:
$risposta = $_POST["risposta"];
come posso estrarre i dati dei singoli valori dell'array?
Hola lilo,
se il modulo è fatto correttamente, $risposta è già un array, ergo:
Codice PHP:
foreach ($risposta as $id => $valore) {
echo "risposta[$id] = $valore\n";
}
ti ringrazio sempre per la disponibilità.
a var $valore è un punteggio che deve essere sommato, assieme agli altri.
Posso ricavare la somma totale?
Codice PHP:
foreach (
$risposta as $id => $valore)
$somma += $valore;
{
CIAO! anch'io ho un problema simile, quindi sfrutto questo post![]()
allora, io ho un array così composto:
print_r ($arr); -che viene->
Array ( [presenze_id] => 9 [presenze_user_id] => 1 [presenze_giorno] => 2007-12-06 [presenze_ing_mat] => 11:00:00 [presenze_usc_mat] => 12:28:00 [presenze_ing_pom] => 14:23:00 [presenze_usc_pom] => 00:00:00 [presenze_note] => [presenze_ore_lavoro] => 00:00:00 )
Seguendo il consiglio qui sopa in PAGINA1 ho scritto:
echo "<input type='hidden' name='arr[]' value='$arr' />";
In PAGINA2 xò eseguendo:
$arr = $_POST['arr'];
foreach ($arr as $id => $valore) {
echo "arr[$id] = $valore\n";
}
Nn mi si visualizza niente. Dove sto sbagliando? :master:
Of course yes, lilo, ma prima inizializza $somma a 0 (precauzione indispensabile nei linguaggi atipizzati come il PHP). Se vuoi fare il fighetto puoi anche usare array_sum():
Codice PHP:
$somma = array_sum($risposta);
Noooo vi prego nn fatemi aprire un altro topic al riguardo! Sono qui sopra qualche d'uno mi veda please!!!![]()
In realtà dovrebbe uscirti una sfilza di stringhe 'array'.Originariamente inviato da mikele86
CIAO! anch'io ho un problema simile, quindi sfrutto questo post![]()
allora, io ho un array così composto:
print_r ($arr); -che viene->
Array ( [presenze_id] => 9 [presenze_user_id] => 1 [presenze_giorno] => 2007-12-06 [presenze_ing_mat] => 11:00:00 [presenze_usc_mat] => 12:28:00 [presenze_ing_pom] => 14:23:00 [presenze_usc_pom] => 00:00:00 [presenze_note] => [presenze_ore_lavoro] => 00:00:00 )
Seguendo il consiglio qui sopa in PAGINA1 ho scritto:
echo "<input type='hidden' name='arr[]' value='$arr' />";
In PAGINA2 xò eseguendo:
$arr = $_POST['arr'];
foreach ($arr as $id => $valore) {
echo "arr[$id] = $valore\n";
}
Nn mi si visualizza niente. Dove sto sbagliando? :master:
Per prima cosa assicurati che la form sia mandata come post (<form method="post" ...>). Poi urge una precisazione: non puoi spedire un array con un solo <input>, ma generare un input per ogni valore dell'array. Quello che fa il PHP è semplicemente ritornare un array in $_POST se trova più post con lo stesso nome e con le quadre, niente di più.
In effetti, rileggendo mi sembra che questo sia anche il problema di lilo.
Concludendo, per spedire un array in post è necessario ciclare sull'array in PAGINA1:
e in PAGINA2 il PHP ricostruirà "arr" come vettore e lo resituirà in $_POST['arr'] (ed è l'unica cosa che fa il PHP in automatico).Codice PHP:
foreach ($arr as $key => $value) {
echo "<input type='hidden' name='arr[$key]' value='$value' />";
}
Confermo! mi è venuto. in PAGINA2 mi è bastato $arr = $_POST['arr'];Concludendo, per spedire un array in post è necessario ciclare sull'array in PAGINA1:
e in PAGINA2 il PHP ricostruirà "arr" come vettore e lo resituirà in $_POST['arr'] (ed è l'unica cosa che fa il PHP in automatico).Codice PHP:
foreach ($arr as $key => $value) {
echo "<input type='hidden' name='arr[$key]' value='$value' />";
}
Grazie! Gentilissimo!![]()