Con esta pagina haces la llamada asincronica a otra pagina una vez que se cargue el body, esto quiere decir que primero cargas la pagina y despues cargas la llamada.
Código PHP:
<html>
<head>
<script type="text/javascript" language="Javascript">
//Funcion para llamada asincronica
function crearAjax(){
var xmlhttp = false;
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}catch (e){
try{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch (E){
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined'){
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function getResponse(){
var url = "pagina_dos.php";
http.open("GET", url, true);
http.onreadystatechange = function(){
if (http.readyState == 1){
window.status = "Cargando respuesta...";
}
if (http.readyState == 4){
window.status = "Respuesta obtenida";
var json = eval('(' + http.responseText + ')');
if(json){
alert("La respuesta es verdadera");
}else{
alert("La respuesta es falsa");
}
}
}
http.send(null);
}
</script>
</head>
<body onload="getResponse()">
</body>
</html>
En esta otra pagina (pagina_dos.php) tengo un echo json_encode(true), lo que interesa de esto es que:
1.- El json_encode() es solo para decodificar el texto y que lo pueda leer el javascript, asi que si o si debe ir y no es un problema.
2.- lo que vaya en su interior (en este caso true) puede ser lo que tu quieras.
Código PHP:
<?php
echo json_encode(true);
?>
Suerte!