Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more.

Home ~ Php :: Inviare un array tramite form :: Indice Php

Inviare un array tramite form

Categoria: Php Inserito il: 20-07-2007 Stampa (23518 click)

Un problema comune nell'invio di dati tramite form HTML è quello realtivo alla trasmissione degli array. E' molto scomodo estrarre tutti i valori di un array, soprattutto nel caso in cui questo sia di grosse dimensioni, e inviarli destinando ad ognuno di essi un determinato campo.

Fortunatamente PHP ci mette a disposizione una funzione, denominata serialize() che genera una versione archiviabile di un valore; in pratica serialize() restituisce in output una stringa contenente un flusso di bytes senza perderne la struttura.

Facciamo un esempio, creiamo un array di questo tipo:

$array = array("a","b","c","d","e");
Sono presenti 5 valori, per inviarli tramite form potremmo estrarli tutti e associarli a 5 differenti campi nascosti. Abbiamo però a disposizione serialize():
$serial = serialize($array);
Da cui otteniamo una versione archiviata come questa:
a:5:{i:0;s:1:"a";i:1;s:1:"b";i:2;s:1:"c";i:3;s:1:"d";i:4;s:1:"e";}
Come sarà possibile notare, la stringa contiene tutti i valori dell'array e i rispettivi numeri indice. Una volta inviato tramite form questo valore, contenuto semplicemente nella variabile $serial, sarà possibile deserializzare la variabile e riottenere tutti i valori dell'array grazie alla funzione unserialize(); provate per esempio ad eseguire questo semplice codice:
<?php
$array = array("a","b","c","d", "e");
$serial = serialize($array);
$data = unserialize($serial);
foreach($data as $val)
{
echo $val.'<br>';
}
?>

Cerca nel sito
Per sito
Sviluppatore di applicazioni Web con competenze evolute nella progettazione delle basi di dati, autore per alcune delle più importanti testate on line dedicate alla manualistica tecnica (HTML.it, MrWebmaster.it, Edit) e consulente per l'e-learning.
Tutte le categorie
Tutorial Random
La classe PHPMailer
PHPMailer, è una classe utilizzatissima dagli sviluppatori PHP perchè permette di inviare comodamente messaggi di posta elettronica sia come semplice... Leggi l'articolo
Corsi online per sviluppatori
Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti