Hi,
ich beabsichtige ein Array sortiert auszugeben. Als Sortierkriterium soll eine GET-Variable (sort) dienen.
function sortiere($adata, $bdata)
{
global $sort;
if( $adata[$sort] == $bdata[$sort])
{
return 0;
}
return ( $adata[$sort] < $bdata[$sort]) ? 1 : -1;
}usort($data['players'], 'sortiere');
Probier doch mal, in sortiere() direkt das $sort zu definieren. Also etwa so
~~~php
function sortiere($adata, $bdata)
{
$sort = isset($_POST['sort']) ? $_POST['sort'] : 'score';
if( $adata[$sort] == $bdata[$sort])
{
return 0;
}
return ( $adata[$sort] < $bdata[$sort]) ? 1 : -1;
}
$_POST sollte als superglobale immer verfügbar sein.
Wenn du noch sichergehen willst, dass keine Hinweise wg. falschem Array-Zugriff kommen, wenn jemand die Eingabedaten manipuliert, dann kannst du auch noch
$sort = isset($_POST['sort']) && key_exists($_POST['sort'], $adata) ? $_POST['sort'] : 'score';
schreiben.
Bis die Tage,
Matti