Foros del Web » Programando para Internet » Javascript »

Javascript y php error...

Estas en el tema de Javascript y php error... en el foro de Javascript en Foros del Web. Buenas, estube buscando alternativas al Iframe, y encontre que se podia hacer algo parecido con javscript. Código: function ajaxFunction() { var xmlHttp; try { xmlHttp=new ...
  #1 (permalink)  
Antiguo 08/08/2009, 08:43
Avatar de zornak  
Fecha de Ingreso: septiembre-2008
Ubicación: Toledo
Mensajes: 96
Antigüedad: 16 años, 2 meses
Puntos: 3
Javascript y php error...

Buenas, estube buscando alternativas al Iframe, y encontre que se podia hacer algo parecido con javscript.

Código:
function ajaxFunction() {
  var xmlHttp;
  
  try {
   
    xmlHttp=new XMLHttpRequest();
    return xmlHttp;
  } catch (e) {
    
    try {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      return xmlHttp;
    } catch (e) {
      
	  try {
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        return xmlHttp;
      } catch (e) {
        alert("Tu navegador no soporta AJAX!");
        return false;
      }}}
}




function Enviar(_pagina,capa) {
    var ajax;
    ajax = ajaxFunction();
    ajax.open("POST", _pagina, true);
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

    ajax.onreadystatechange = function() {
		if (ajax.readyState==1){
			document.getElementById(capa).innerHTML = " Aguarde por favor...";
			     }
		if (ajax.readyState == 4) {
		   
                document.getElementById(capa).innerHTML=ajax.responseText; 
		     }}
			 
	ajax.send(null);
}
esas son las funciones, y en los link pongo:

Código:
<a href="javascript:Enviar('modulos/home.php','content_centro')" class="boton">Inicio</a>
Pero la cosa es...

En una de esas paginas, tengo un formulario, y en php tengo que si un campo queda vacio de error con: if (tal) echo "taltal"

la cosa es que el mesaje del echo, me sale en un apagina en blanco, y no en el formulario...

alguna idea??
  #2 (permalink)  
Antiguo 08/08/2009, 12:48
 
Fecha de Ingreso: abril-2009
Mensajes: 26
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: Javascript y php error...

Hola , te recomiendo que uses jquery lo puedes bajar desde su pagina oficial dale jquery . com
por que usar esa librieria , es mas facil que usar ajax puro bueno al menos para mi es más facil un ejemplo te puedo dar para hacer lo que tu quieres , mira seria algo asi

Código index.html:
Ver original
  1. <html>
  2. <head><title>Ejemplo de uso de jquery por paridin </title>
  3. <!-- Incluimos la libreria jquery -->
  4. <script languaje="javascript" type="text/javascript" src="jquery"></script>
  5. <script languaje="javascript" type="text/javascript" >
  6. <!-- Crearemos la funcion que tu utilizas -->
  7.  
  8. function cargarPHP(){
  9.  
  10.              var nombre = document.getElementById('nombre');
  11.              var edad =  document.getElementById('edad');
  12.              var selec = document.getElementById('selec');
  13.  
  14.     $.ajax( {
  15.         async:true,
  16.         dataType: "html",
  17.         type: "POST",
  18.         url: "phpresultado.php",
  19.         data: "nombre="+nombre+"&edad="+edad+"&selec="+selec,
  20.         global: true,
  21.         ifModified: false,
  22.         processData:true,
  23.         contentType: "application/x-www-form-urlencoded",
  24.         success: function(datos){
  25.             $("#resultado").html(datos);
  26.         }
  27.     });
  28. } // EDITADO FALTABA ESTE CIERRE DE FUNCION POR ESO GENERABA ERROR LO SIENTO :( SOMOS HUMANOS
  29.  
  30. </script>
  31. </head>
  32. <body>
  33. <h1> mostrar resultado de php en una etiqueta</h1>
  34. Usaremos la etiqueta DIV sin embargo debe resultar en cualquier etiqueta
  35.  
  36. <form name="form1" id="form1" action="#" method="post" >
  37. nombre <input type="text" name="nombre" id="nombre" /> <br />
  38. edad  <input type="text" name="edad" id="edad" /> <br />
  39. mostrar edad o nombre:
  40. <input type="radio" name="selec" value="nombre" id="selec"/> Nombre
  41. <input type="radio" name="selec" value="edad" id="selec"/> edad
  42.  
  43. <input type="button" name="boton" value="Cargar resultado del php"> onclick="cargarPHP()" />
  44. </form>
  45.  
  46.  
  47. <div id="resultado">Aqui cambiara al hacer click del link</div>
  48.  
  49.  
  50. </body>
  51. </html>

phpresultado.php
Código PHP:
<? 

if($_POST['selec'] == 'nombre'){
echo 
"Tu nombre es :" $_POST['nombre'] ;
}else{
echo 
"Tu edad es :" $_POST['edad'] ;
}


?>
checalo y me dices que te parece un saludo por cierto revisando tu codigo para llamar a un elemento del formulario debes hacer esto
Código:
document.getElementById('capa').innerHTML = " Aguarde por favor...";
y tu estas haciendo esto
Código:
document.getElementById(capa).innerHTML = " Aguarde por favor...";
Un saludo

Última edición por paridin; 22/08/2009 a las 14:48 Razón: Error de sintaxis
  #3 (permalink)  
Antiguo 08/08/2009, 13:20
Avatar de zornak  
Fecha de Ingreso: septiembre-2008
Ubicación: Toledo
Mensajes: 96
Antigüedad: 16 años, 2 meses
Puntos: 3
Respuesta: Javascript y php error...

A parte de que no entiendo como va...

Bueno, te comento, me e bajado el jquery ese y lo e renombrado a jquery.js (me venia en formato js)

mi index.html:

Código html:
Ver original
  1. <head><title>Ejemplo de uso de jquery por paridin </title>
  2. <!-- Incluimos la libreria jquery -->
  3. <script languaje="javascript" type="text/javascript" src="jquery.js"></script>
  4. <script languaje="javascript" type="text/javascript" >
  5. <!-- Crearemos la funcion que tu utilizas -->
  6.  
  7. function cargarPHP(){
  8.  
  9.              var nombre = document.getElementById('nombre');
  10.              var edad =  document.getElementById('edad');
  11.              var selec = document.getElementById('selec');
  12.  
  13.     $.ajax( {
  14.         async:true,
  15.         dataType: "html",
  16.         type: "POST",
  17.         url: "phpresultado.php",
  18.         data: "nombre="+nombre+"&edad="+edad+"&selec="+selec,
  19.        global: true,
  20.        ifModified: false,
  21.        processData:true,
  22.        contentType: "application/x-www-form-urlencoded",
  23.        success: function(datos){
  24.            $("#resultado").html(datos);
  25.         }
  26.     });
  27.  
  28.  
  29. </head>
  30. <h1> mostrar resultado de php en una etiqueta</h1>
  31. Usaremos la etiqueta DIV sin embargo debe resultar en cualquier etiqueta
  32.  
  33. <form name="form1" id="form1" action="#" method="post" >
  34. nombre <input type="text" name="nombre" id="nombre" /> <br />
  35. edad  <input type="text" name="edad" id="edad" /> <br />
  36. mostrar edad o nombre:
  37. <input type="radio" name="selec" value="nombre" id="selec"/> Nombre
  38. <input type="radio" name="selec" value="edad" id="selec"/> edad
  39.  
  40. <input type="button" name="boton" value="Cargar resultado del php" onclick="cargarPHP()" />
  41. </form>
  42.  
  43.  
  44. <div id="resultado">Aqui cambiara al hacer click del link</div>
  45.  
  46.  
  47. </body>
  48. </html>

phpresultado.php

Código php:
Ver original
  1. <?
  2.  
  3. if($_POST['selec'] == 'nombre'){
  4. echo "Tu nombre es :" . $_POST['nombre'] ;
  5. }else{
  6. echo "Tu edad es :" . $_POST['edad'] ;
  7. }
  8.  
  9.  
  10. ?>
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 18:32.