Buongiorno a tutti,
Ho delle pagine html con dei form e siccome il mio cliente ha necessità di inserire caratteri speciali, ho fatto in modo che alcuni dati venissero memorizzati nel database con codifica in base64.
Andando però a rileggere i dati dal database, ho necessità di riordinarli in ordine alfabetico, per poi passarli a delle variabili javascript.
Attualmente lo faccio in questo modo ("cod_cliente" è un campo INTEGER, "nome_visualizzato" è il campo codificato in base64):

Codice PHP:
<script language="javascript" type="text/javascript">
<!--
var elenco_clienti = new Array();
var codice_clienti = new Array();

<?php

$result 
mysql_query("SELECT cod_cliente, nome_visualizzato FROM tabella_clienti ORDER BY nome_visualizzato") or die (mysql_error(). "Impossibile collegarsi al DataBase");

while (
$row mysql_fetch_assoc($result )) {
    
$nome_visualizzato base64_decode($row['nome_visualizzato']);
    
$cod_cliente htmlentities($row['cod_cliente']);
    
    echo 
'codice_clienti.push("'.$cod_cliente.'");';
    echo 
'elenco_clienti.push("'.$nome_visualizzato.'");';
}

?>
//-->
</script>
Così però il mio ordine non è esattamente quello alfabetico che cercavo, perchè i miei dati vengono ordinati nella query PRIMA di essere riconvertiti con la funzione base64_decode().

So che posso riordinare un vettore in php con la funzione sort() ma, siccome per ogni voce ho più campi da esportare, significa che dovrei prima andare a leggere il campo "nome_visualizzato", riordinare gli elementi, eseguire un'altra query per estrarre il cod_cliente corrispondente e poi passarli al javascript...
Potrei fare in molti altri modi, tanto riordinare un vettore non è una cosa così impossibile, ma mi sembrano tutti piuttosto macchinosi...
Non c'è un metodo più veloce per riordinare il risultato della mia query ($result) DOPO la decodifica di una sola delle due voci?

Grazie mille!