Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Llamar a funciones PHP en AJAX

Estas en el tema de Llamar a funciones PHP en AJAX en el foro de Frameworks JS en Foros del Web. Buenas. Como dice el título, necesito llamar a funciones PHP usando AJAX y para ello he montado lo siguiente: HTTPRequest.js Código PHP: var  XMLHttpRequestObject  =  ...
  #1 (permalink)  
Antiguo 27/08/2010, 19:24
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 14 años, 4 meses
Puntos: 0
Llamar a funciones PHP en AJAX

Buenas. Como dice el título, necesito llamar a funciones PHP usando AJAX y para ello he montado lo siguiente:

HTTPRequest.js
Código PHP:
var XMLHttpRequestObject false;  
 
if(
window.XMLHttpRequest) { 
    
XMLHttpRequestObject = new XMLHttpRequest(); 
}
else if(
window.ActiveXObject) { 
    
XMLHttpRequestObject = new  
    
ActiveXObject("Microsoft.XMLHTTP"); 

 
function 
getData(dataSourcedivID) {  
    if(
XMLHttpRequestObject) { 
        var 
obj document.getElementById(divID);  
        
XMLHttpRequestObject.open("GET"dataSource);  
 
        
XMLHttpRequestObject.onreadystatechange = function() {  
                if(
XMLHttpRequestObject.readyState == &&  
                
XMLHttpRequestObject.status == 200) {  
                    
obj.innerHTML XMLHttpRequestObject.responseText;  
                }
        }
        
XMLHttpRequestObject.send(null);  
    } 

index.php
Código PHP:
(...)
<
input type="image" src="reverse.png" onclick="getData('ajax.php?do=reverse', 'reverse')">
<
div id="reverse">ASC</div>
(...) 
ajax.php
Código PHP:
<?php
if($_GET['do'] == "reverse") {
    echo 
reverse();
}
?>
Todo funciona correctamente. Sin embargo me preocupa que cualquiera pueda acceder directamente a la función cargando simplemente el archivo ajax.php (ajax.php?do=reverse).

¿Alguna solución a esto? ¿Alguna forma mejor de hacer lo que hago? Muchas gracias a todos por vuestra amabilidad
  #2 (permalink)  
Antiguo 28/08/2010, 02:07
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 9 meses
Puntos: 29
Respuesta: Llamar a funciones PHP en AJAX

Si envías los datos por POST viajan ocultos como un formulario.
De todos modos, la respuesta de ajax.php?do=reverse mediante ajax será la misma que accediendo directamente, puro html.
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #3 (permalink)  
Antiguo 28/08/2010, 06:57
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Llamar a funciones PHP en AJAX

Cita:
Iniciado por CHuLoSoY Ver Mensaje
Si envías los datos por POST viajan ocultos como un formulario.
De todos modos, la respuesta de ajax.php?do=reverse mediante ajax será la misma que accediendo directamente, puro html.
Lo sé, pero lo que busco es que no se pueda acceder a la función desde ajax.php, únicamente mediante AJAX.
  #4 (permalink)  
Antiguo 02/09/2010, 14:02
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Llamar a funciones PHP en AJAX

¿A nadie se le ocurre como podría solucionarlo?

Gracias de nuevo.
  #5 (permalink)  
Antiguo 02/09/2010, 16:22
 
Fecha de Ingreso: septiembre-2010
Mensajes: 60
Antigüedad: 14 años, 2 meses
Puntos: 5
Respuesta: Llamar a funciones PHP en AJAX

Es posible que se pueda hacer alguna triquiñuela jugando con las Cookies, ya que la petición ajax supongo que también las pasará. Sin embargo, échale un vistazo con firebug a la petición con ajax, a ver si va a enviar una cabecera sensiblemente distinta y lo puedes aprovechar a tu favor :)

Etiquetas: ajax, funciones, llamar, php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:45.