AJAX - ejecutar funcion php desde ajax

 
Vista:

ejecutar funcion php desde ajax

Publicado por Olivie (4 intervenciones) el 15/01/2010 10:40:39
Hola!

tengo un problema con la ejecución de funciones php, ya que no se ejecutan, sino que se imprime su contenido ¿por qué puede ser?

Este es mi fuchero ajax.js:
Código Javascript:

1.
function generaTablas(nEnlaces){
2.
// Primero vamos a ver si la URL es una URL :)
3.

4.
// Usuario inteligente...
5.
if (window.XMLHttpRequest) {
6.
req = new XMLHttpRequest();
7.
req.onreadystatechange = processReqChange;
8.
req.open("POST", "funciones_ajax.inc", true);
9.
req.send("numero="+nEnlaces+"&FUNCION=pintarTablaDatos");
10.
// ...y usuario de Internet Explorer Windows
11.
} else if (window.ActiveXObject) {
12.
isIE = true;
13.
req = new ActiveXObject("Microsoft.XMLHTTP");
14.
if (req) {
15.
req.onreadystatechange = processReqChange;
16.
req.open("POST", "funciones_ajax.inc",true);
17.
req.send("numero="+nEnlaces+"&FUNCION=pintarTablaDatos");
18.
}
19.
}
20.
}
21.

22.
// Funcion que se llama cada vez que se dispara el evento onreadystatechange
23.
// del objeto XMLHttpRequest
24.
function processReqChange(){
25.
var contenedorTablas = document.getElementById("tablas_relleno");
26.
if(req.readyState == 4){
27.
contenedorTablas.innerHTML = req.responseText;
28.
}
29.
}

Este es mi fichero funciones_ajax.php, con la función llamada:

Código PHP:

1.
eval ('$_POST["FUNCION"]($_POST["numero"]);');
2.
function pintarTablaDatos($nEnlaces){
3.
$loc = "Origen";
4.

5.
$x = array("Nº", "Equipo", "SUBR/A155M" , "SLOT/VC4", "PUERT/VC12", "E1");
6.
echo "<table id=\"tabla$loc\">";
7.
echo "<tr>";
8.
echo "<th colspan=\"6\">$loc</th>";
9.
echo "</tr>";
10.
echo "<tr class=\"pequeno\">";
11.
for ($i=0;$i<=5;$i++) {
12.
echo "<td>$x[$i]</td>";
13.
}
14.
echo "</tr>";
15.
for ($j=0;$j<=$nEnlaces - 1;$j++) {
16.
echo "<tr>";
17.
for($h=0;$h<=5;$h++) { // nombre es loc_nEnlace_tipo
18.
echo "<td><select name=\"$loc$j$x[$h]\" >";
19.
echo "<option value=\"0\" selected>(select:)</option>";
20.
echo "</select></td>";
21.
}
22.
echo "</tr>";
23.
}
24.
echo "</table>";
25.
}

y la salida en el navegador es algo asi...

"; echo ""; echo "$loc"; echo ""; echo ""; for ($i=0;$i<=5;$i++) { echo "$x[$i]"; } echo ""; for ($j=0;$j<=$nEnlaces - 1;$j++) { echo ""; for($h=0;$h<=5;$h++) { // nombre es loc_nEnlace_tipo echo ""; } echo ""; } echo ""; } ?>

gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ejecutar funcion php desde ajax

Publicado por Marcelo (3 intervenciones) el 04/02/2010 20:19:31
Pregunta: El código php esta dentro de <?php //codigo ?>
Por que da error si solo esta dentro de <? //codigo ?> y muestra en pantalla eso mismo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar