Comunidad de diseño web y desarrollo en internet online

Pregunta sobre "Introducción a AJAX con PHP y formularios"

Citar            
MensajeEscrito el 11 Oct 2007 01:49 pm
Hola a todos,

Estoy siguiendo el magnifico tutorial "Introducción a AJAX con PHP y formularios" pero tengo un problema con él.

Cuando introduzco valores en el formulario y pulso el botón en vez de obtener el resultado producido por el PHP, obtengo la pagina PHP en codigo, caracter por caracter.

Lo he intentado con otros ejemplos que tambien tienen Ajax, PHP y fomularios, y me pasa lo mismo. El PHP en vez de funcionar, aparece en la pagina de resultado mostrando su codigo.

Tengo instalado el Apache Server y PHP en mi PC, y todas mis paginas PHP funcionan correctamente cuando las pongo en la carpeta donde he probado el ejemplo de "Introducción a AJAX con PHP y formularios" y los siguientes ejemplos al respecto que conseguí.

¿Cuál puede ser el problema? ¿Tendría que cambiar la configuracion del httpd.conf y/o php.ini? si es así , ¿qué tengo que cambiar?

Muchas gracias de antemano!

Por NanKing

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 11 Oct 2007 05:41 pm
mira el problema q tienes es q tienes mal configurado Apache y PHP... en pocas palabras Apache no esta interprentando codigo PHP...!


Que version de apache y php utilizas..?

Por jripper

228 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 11 Oct 2007 05:57 pm
Bienvenido a Clab jripper
Como ya se te ha dicho en otros posts, tu avatar excede el tamaño máximo permitido (100x100), por favor, redúcelo.

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

firefox
Citar            
MensajeEscrito el 11 Oct 2007 06:05 pm

The Fricky! escribió:

Bienvenido a Clab jripper
Como ya se te ha dicho en otros posts, tu avatar excede el tamaño máximo permitido (100x100), por favor, redúcelo.


Gracias brother por la recomendacion ya tome las medidas respectivas ya cambie mi avatar.! :wink:

Por jripper

228 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 12 Oct 2007 08:05 am
Gracias por la respuesta jripper!

Si, parece que no está interpretando el codigo PHP, pero debe ser cuando lo llamo desde un html usando Ajax, porque el resto de mis scripts PHP si estan siendo interpretados ..???
Mira, mi version de Apache Server es la 2.0.59 y mi version de PHP, php-5.2.4 .. para Windows ambas.
¿Es que no se quieren este par?

Gracias de nuevo!

Por NanKing

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 12 Oct 2007 11:17 am
Deberias de subir el codigo para analizar y ver en que punto esta fallando..! :wink:

Por jripper

228 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 12 Oct 2007 11:58 am

NanKing escribió:

Si, parece que no está interpretando el codigo PHP, pero debe ser cuando lo llamo desde un html usando Ajax, porque el resto de mis scripts PHP si estan siendo interpretados ..???


Tú mismo te has respondido.

Por Aoyama

BOFH

6224 de clabLevel

6 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Bastard Operators From Hell

Webdesigner & Developer, en mis ratos libres bebo café por litros.

firefox
Citar            
MensajeEscrito el 12 Oct 2007 12:15 pm
Perdona Aoyama, pero no entiendo que quieres decir.
Aunque llame al PHP desde Ajax debería funcionar. Lo que no entiendo es porque no me funciona a mi y al resto de los mortales si.

Por NanKing

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 12 Oct 2007 12:25 pm
Este es el codigo.

Primero el html:


Código :

<html>
 <head>
  <title>Boards 'R' Us</title>
  <link rel="stylesheet" type="text/css" href="boards.css" />
  <script type="text/javascript" src="text-utils.js"> </script>
  <script language="javascript" type="text/javascript">
   var request = null;

   function createRequest() {
     try {
       request = new XMLHttpRequest();
     } catch (trymicrosoft) {
       try {
         request = new ActiveXObject("Msxml2.XMLHTTP");
       } catch (othermicrosoft) {
         try {
           request = new ActiveXObject("Microsoft.XMLHTTP");
         } catch (failed) {
           request = null;
         }
       }
     }

     if (request == null)
       alert("Error creating request object!");
   }

   function getBoardsSold() {
     createRequest();

   var url = "getUpdatedBoardSales-ajax.php";
// con la direccion completa tampoco funciona, no muestra codigo pero no hace nada   
//var url = "http://localhost/boards/boards/getUpdatedBoardSales-ajax.php";
  
   request.open("GET", url, true);
     request.onreadystatechange = updatePage;
     request.send(null);
  }

  function updatePage() {
    if (request.readyState == 4) {
      var newTotal = request.responseText;
      var boardsSoldEl = document.getElementById("boards-sold");
      var cashEl = document.getElementById("cash");
      replaceText(boardsSoldEl, newTotal);
    
      // calcular cuanto dinero se ha ganado
      var priceEl = document.getElementById("price");
      var price = getText(priceEl);
      var costEl = document.getElementById("cost");
      var cost = getText(costEl);
      var cashPerBoard = price - cost;
      var cash = cashPerBoard * newTotal;
     
    
      /* Actualizar el total en el formulario */
      cash = Math.round(cash * 100) / 100;
      replaceText(cashEl, cash);
    }
  }
  </script>
 </head>

 <body>
  <h1>Boards 'R' Us :: Informe de Custom Boards </h1>
  <div id="boards">
   <table>
    <tr><th>Snowboards vendidas</th>
     <td><span id="boards-sold">1012</span></td></tr>
    <tr><th>Por cuanto las vendo</th>
     <td>$<span id="price">249.95</span></td></tr>
    <tr><th>Lo que me cuesta</th>
     <td>$<span id="cost">84.22</span></td></tr>
   </table>
   <h2>Ganancia: 
    $<span id="cash">167718.76</span></h2>
   <form method="GET">
    <input value="Mostrar" type="button"
           onClick="getBoardsSold();" />
   </form>
  </div>
 </body>
</html>


Ahora el PHP

Código :

<?php

// Mostrar un numero arbitrario de boards vendidas
$totalSold = 1012;

// mostrar las nuevas ventas
srand((double)microtime() * 1000000);
$totalSold = $totalSold + rand(0,1000);

echo $totalSold;

?>


El js

Código :

function replaceText(el, text) {
  if (el != null) {
    clearText(el);
    var newNode = document.createTextNode(text);
    el.appendChild(newNode);
  }
}

function clearText(el) {
  if (el != null) {
    if (el.childNodes) {
      for (var i = 0; i < el.childNodes.length; i++) {
        var childNode = el.childNodes[i];
        el.removeChild(childNode);
      }
    }
  }
}

function getText(el) {
  var text = "";
  if (el != null) {
    if (el.childNodes) {
      for (var i = 0; i < el.childNodes.length; i++) {
        var childNode = el.childNodes[i];
        if (childNode.nodeValue != null) {
          text = text + childNode.nodeValue;
        }
      }
    }
  }
  return text;
}


y el css, por si lo quereis ver mas claro:

Código :

body {
  font-family:     Verdana, Geneva, Arial, sans-serif;
  font-size:       small;
  text-align:      center;
}

h1 {
  color:           #cc6600;
  border-bottom:   thin dotted #888888;
  font-size:       1.7em;
}

h2 {
  font-size:       1.3em;
}

table {
  margin-left:     auto;
  margin-right:    auto;
  border:          thin solid black;
  caption-side:    bottom;
  border-collapse: collapse;
  font-size:       small;
}

td, th {
  border:          thin dotted grey;
  padding:         5px;
  text-align:      center;
}

th {
 background-color: #fcba7a;
}

Por NanKing

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 12 Oct 2007 03:58 pm
Es mucho código y me asusto. Pero mira brother te recomiendo uses un proxy, que atrape las peticiones, así muy fácil ves donde esta el error, o incluso si ni siquiera se hace una petición. Te recomiendo uses el charles.

Revisa que en la misma carpeta donde esta el html esta el php. No uses rutas absolutas.

saludos :wink:

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.