Stai facendo una grandissima confusione.
Cosa dovrebbe esserci dentro a $_POST? file_get_contents() si aspetta come parametro una stringa (URL nello specifico), mentre $_POST, ammesso che sia definito, è un array.$string=file_get_contents($_POST);
Il codice che hai postato all'inizio, quello jQuery, dove sta? Su una tua pagina?
Hai dato una letta alla documentazione di getJson()? Hai visto l'esempio per vedere come devi ciclare sui dati ricevuti?
Il file json.php dove sta? Sul server che ospita anche il codice jQuery oppure su un altro sito? Da come scrivi si direbbe che sia sullo stesso server e anche nella stessa cartella, è effettivamente così?
Questi dati POST chi dovrebbe generarli? Come?