Ciao a tutti, ho già proposto questa problematica alla fine di un altro topic ma ero andato offtopic perchè avevo iniziato la mia discussione sul combine degli array e ho paura che non venisse più notata.
Vado al sodo, se c'è bisogno di ulteriori spiegazioni chiedete pure.
Ho bisogno di trasportare un array, creato con delle variabili inserite dall'utente tramite un form, con il method post.
Dopo varie ricerche ho scoperto la funzione serialize e unserialize, ma ho un errore al quale non riesco a venirne a capo. Prima di tutto vi chiedo se ci sia un altro metodo per mettere in una singola variabile il mio array e quindi spedirlo.
Questo è il print del mio array ricevuto dalla pagina php:
Codice PHP:
Array ( [0] => a:1:{i:1;a:5:{s:6:"titolo";s:7:"Titolo1";s:11:"sottotitolo";s:12:"Sottotitolo1";s:8:"prodotto";s:14:"Primo prodotto";s:11:"descrizione";s:12:"Descrizione1";s:4:"link";s:5:"link1";}} [1] => a:1:{i:2;a:5:{s:6:"titolo";s:7:"Titolo2";s:11:"sottotitolo";s:12:"Sottotitolo2";s:8:"prodotto";s:16:"Secondo prodotto";s:11:"descrizione";s:12:"Descrizione2";s:4:"link";s:5:"link2";}} [2] => a:1:{i:3;a:5:{s:6:"titolo";s:7:"Titolo3";s:11:"sottotitolo";s:12:"Sottotitolo3";s:8:"prodotto";s:14:"Terzo prodotto";s:11:"descrizione";s:12:"Descrizione3";s:4:"link";s:5:"link3";}} [3] => a:1:{i:4;a:5:{s:6:"titolo";s:7:"Titolo4";s:11:"sottotitolo";s:12:"Sottotitolo4";s:8:"prodotto";s:15:"Quarto prodotto";s:11:"descrizione";s:12:"Descrizione4";s:4:"link";s:5:"link4";}} [4] => a:1:{i:5;a:5:{s:6:"titolo";s:7:"Titolo5";s:11:"sottotitolo";s:12:"Sottotitolo5";s:8:"prodotto";s:15:"Quinto prodotto";s:11:"descrizione";s:12:"Descrizione5";s:4:"link";s:5:"link5";}} [5] => a:1:{i:6;a:5:{s:6:"titolo";s:7:"Titolo6";s:11:"sottotitolo";s:12:"Sottotitolo6";s:8:"prodotto";s:14:"Sesto prodotto";s:11:"descrizione";s:12:"Descrizione6";s:4:"link";s:5:"link6";}} )
Questo è il codice che applico:
Dal form
Codice PHP:
$sql="SELECT * FROM `home`";
$dati=mysql_query($sql);
while($row=mysql_fetch_assoc($dati))
{
$home = array( $row['id'] => array(
'titolo' => $row["titolo"],
'sottotitolo' => $row["sottotitolo"],
'prodotto' => $row["prodotto"],
'descrizione' => $row["descrizione"],
'link' => $row["link"]
));
$home = serialize($home);
........
........
<textarea name="home[]"><?php echo $home; ?></textarea>
.......
}
Dalla pagina ricevente
Codice PHP:
$home = unserialize($_POST['home']);
Non riesco ad applicare unserialize, ho questo errore: Warning: unserialize() expects parameter 1 to be string....