Actualice el navegador con la función PHP después de Javascript y AJAX POST

Mi Javascript permite al usuario iniciar sesión en un sistema de terceros y devolver una serie de detalles del usuario. Esto funciona perfectamente :)

Uso JSON y AJAX para PUBLICARLO en un script PHP. Esto también funciona.

El script PHP interroga mi base de datos mySQL y devuelve varios detalles. ¡Esto también funciona!

Sin embargo, solo puedo ver la salida de mySQL en el Inspector web de Safari. Supongo que necesito obtener el script PHP para "actualizar" el navegador para mostrar el resultado, pero no puedo encontrar cómo hacerlo.

Ayuda apreciada.

preguntado el 30 de junio de 12 a las 13:06

¿No anula esto el objetivo de las llamadas AJAX? -

Gracias Elías. Me pusiste en el camino correcto. -

3 Respuestas

Tendrás que hacer esto con JavaScript.

Cuando regrese su ajax, querrá cargarlo en su página. En su controlador de éxito, actualice un elemento DOM para que contenga los detalles del usuario que le interesan.

Usando jQuery: (y muy rudimentario)

HTML:

...
<div id="userLoginDetails"></div>
...

JS:

$.post('ajax/login.php', { username: 'john doe', password: 'blah' }, function(data) {
  $('#userLoginDetails').html(data);
});

Respondido el 30 de junio de 12 a las 14:06

Puede usar este código para impulsar el control desde PHP:

<?php
    header('Content-type: text/javascript');
    die('location.href=location.href;');
?>

O incluso por JavaScript, después de la carga de AJAX, en el success función puede incluir esto:

success: function() {
    // Other Codes
    location.href=location.href
}

Respondido el 30 de junio de 12 a las 13:06

¡Después de una solicitud AJAX exitosa! - Praveen Kumar Purushothaman

El centavo cayó. Todo lo que necesitaba era la función de "éxito" de AJAX - Duh. Gracias por toda tu ayuda.

    $.ajax({        
    type: "POST",
    url: "AddEdit_Interests.php",
    data: { interestsArray : result },
    success: function(data) {
         $("#lengthQuestion").fadeOut('slow'); 
         document.write(data);
    }
 });

Respondido el 30 de junio de 12 a las 14:06

No usar document.write. Ver la respuesta de RC - Jashwant

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.