Array versenden

abla

Mitglied
Hallo Leute

Ich stelle mich schon wieder mal total blöd an.

Also wie versende ich ein mit JavaScript erzeugtes Array damit ich es mit PHP wieder auslesen kann.

danke für die Hilfe!
 
Man könnte den Array in eine Form bringen, wie es bspw. in PHP serialize() tut, und ihn dann an die URL ranhängen.

Beispielfunktion für nen eindimensionalen Array: (beim Typ der Arrayelemente habsch mich auf 'String' beschränkt)
Code:
<script type="text/javascript">
<!--

//Array "serialisieren"
function serialize(arrArray)
{
strSerialize = '';
intElements  = 0;
for( var k in arrArray )
    {
        intElements++;
        strSerialize += 's:' + k.length +
                        ':"' + k + '";s:' +
                        arrArray[k].length +
                        ':"' + arrArray[k] + '";';
    }
return 'a:' + intElements + ':{' + strSerialize + '}';
}


//"serialisierten" Array als Paramater an Link anhängen
function add_array(objLink, strArrayName)
{
objLink.href = objLink.href + '?' + 
               strArrayName + '=' + 
               escape(serialize(eval(strArrayName)));
return true;
}

//-->
</script>

...Aufruf in einem Link per
Code:
<a href="pfad/zur/script.php"onclick="return add_array(this,'arrayName')">

in PHP kannst du dann per $_GET['arrayName'] drauf zugreifen....zuerst mit rawurldecode(), dann mit stripslashes() und letztendlich mit unserialize() in seine Ausgangsform zurückversetzen.
 
Zurück