cosa centra il fatto che sia in localhost o in remoto? gli indici di $_POST rimangono case sensitive...
in ogni caso vedi anche il suggerimento di Luke70, se metti <a href=""> carichi il file CaricaDati.php senza inviare alcun form, quindi $_POST non conterrà gli indici che ti aspetteresti...
quindi togli pure quel <a> attorno a <button>