Si può inviare con un form un array ad un'altra pagina?
Cerco di spiegarmi, se da una query genero un array a cui aggiundo dei valori, passondo all'altra pagina posso riavere i valori di tutto l'array?
Si può inviare con un form un array ad un'altra pagina?
Cerco di spiegarmi, se da una query genero un array a cui aggiundo dei valori, passondo all'altra pagina posso riavere i valori di tutto l'array?
prova questa
http://se.php.net/manual/it/function.serialize.php
ciao, grazie della risposta è da stamattina che mi sto studiando con i vari esempi il serialize ma non so se è compatibile con il mio caso,esempio:
in poche parole leggo dal db e li metto su un array però devo aggiungere un campo "newquantita" che ottengo dall'input del form... ora nell'array quando lo serializzo alla fine il valore è 0???Codice PHP:
while ($row = mysql_fetch_array($result))
{
echo "<td>[b]". $row['articolo'] . $row['opzione'] . "[/b]</td>
<td>" . $row['taglia'] . "</td>
<td>" . $row['quantita'] . "</td>
<td>" . $row['deposito'] . "</td>
<td>euro " . number_format($row['prezzo'], 2, '.', '') . "</td>
<td>Sc. " . number_format($row['sconto'], 2, '.', '') . "
</td>";
<td></td>
<td><input type=text name=newquantita size=13 value=0></td></tr><tr>";
$arrayordine[]['articolo']= $row['articolo'];
$arrayordine[]['opzione']= $row['opzione'];
$arrayordine[]['deposito']= $row['deposito'];
$arrayordine[]['quantita']= $row['newquantita'];
};
usi l' unserialize per recuperare l'array dopo il passaggio da form?
oppure passi i dati in sessione.
<´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
"The answer to your question is: welcome to tomorrow"
nella pagina succesiva:
Codice PHP:
<?
$arrayRecuperato=unserialize($salvato);
echo($arrayRecuperato);
?>
riepilogo:
quindi passo tutto a articolo2.phpCodice PHP:
$arrayordine=array();
echo "<form action='articolo2.php?login=" . $row['login'] . "' method=POST>";
$query = "......"
$result = mysql_query($query, $db);
while ($row = mysql_fetch_array($result))
{
echo "
<td>[b]". $row['articolo'] . $row['opzione'] . "[/b]</td>
<td>" . $row['taglia'] . "</td>
<td>" . $row['quantita'] . "</td>
<td>" . $row['deposito'] . "</td>
<td>euro " . number_format($row['prezzo'], 2, '.', '') . "</td>
<td>Sc. " . number_format($row['sconto'], 2, '.', '') . "
</td>
<td><input type=text name=newquantita size=13 value=0></td></tr><tr>";
$arrayordine[]['articolo']= $row['articolo'];
$arrayordine[]['opzione']= $row['opzione'];
$arrayordine[]['deposito']= $row['deposito'];
$arrayordine[]['quantita']= $row['newquantita'];
};
$salvato=serialize($arrayordine);
...
come test provo a farmi dare l'array
Codice PHP:
<?
$arrayRecuperato=unserialize($salvato);
echo($arrayRecuperato);
?>
Lo script mi sembra corretto.
A sto punto potrebbero esserci uno dei questi 2 problemi:
1) la tua versione di PHP è precedente al 4.0.7
2) Il serialize ha problemi con gli array multidimensionali (non l'ho mai usato con array multidimensionali quindi potrebbe essere, ma non avrebbe molto senso essendo una funzione per la serializzazzione di oggetti).
Prova a fare dei print_r di debug (magari formattati con i <pre>) e postarli, cosi vediamo se magari l'errore non sia nel retreiving dei dati...![]()
per curiosità prova cosi:
Codice PHP:
<?
$arrayRecuperato=unserialize($salvato);
print("<pre>");
print_r($arrayRecuperato);
print("</pre>");
?>
il bello è che mi da pagina bianca, la mia versione di php è la 4.3.11 (una delle ultime)
ho provato a fare un array con un solo campo ma stesso problema.