Foros del Web » Programando para Internet » Javascript »

porque no me cambia los datos de mi funcion

Estas en el tema de porque no me cambia los datos de mi funcion en el foro de Javascript en Foros del Web. Hola, os cuento un poco mi problema con el codigo, se trata de una consulta sql que cambia de forma asincronica segun la opcion que ...

  #1 (permalink)  
Antiguo 10/09/2011, 07:15
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
porque no me cambia los datos de mi funcion

Hola, os cuento un poco mi problema con el codigo, se trata de una consulta sql que cambia de forma asincronica segun la opcion que elijas, despues esta consulta sql la paso a un array php el cual vuelco a otro array de javascript, que seguido creo una funcion para mostrar los datos con un intervalo de tiempo, pero no me funciona.

La funcion javascript si la consulta la hago estatica si que me funciona pero cuando cambio los valores de la consulta dinamicamente no me cambia los datos de la funcion, alguna idea?

Mi duda tambien es, que si la funcion javascript funciona y cambio los valores de la consulta sql asincronicamente, debe funcionarme la funcion javascript sin recargar la pagina?

espero que algun profesional de este codigo pueda ayudarme.

Saludos.
  #2 (permalink)  
Antiguo 10/09/2011, 08:39
Avatar de Raziel_Ravenheart  
Fecha de Ingreso: agosto-2011
Ubicación: Ibagué, Tolima
Mensajes: 192
Antigüedad: 12 años, 8 meses
Puntos: 37
Exclamación Respuesta: porque no me cambia los datos de mi funcion

Podrías postear tu código para saber que estás haciendo mal?

Generalmente si necesitas hacer eso sin recargar la página.. eso ya lo haces con ajax, y no hay otro modo, así que te recomiendo que te pongas a estudiar el tema, sobre ajax, y si estudias con juicio, en un día ya tienes lo que necesitas. No tiene gracias que alguien te haga el código para esto en particular, por que después vas a necesitar modificarlo, por algún motivo y nadie te va a estar generando código por un solo cambio, si no entiendes ajax.

Cualquier otra cosa que ya tengas hechas y no entiendas algo específico, cualquiera te puede ayudar.
  #3 (permalink)  
Antiguo 10/09/2011, 08:43
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

Raziel_Ravenheart yo no pretendo eso, simplemente que no entiendo porque no me funciona.
  #4 (permalink)  
Antiguo 10/09/2011, 08:50
Avatar de Raziel_Ravenheart  
Fecha de Ingreso: agosto-2011
Ubicación: Ibagué, Tolima
Mensajes: 192
Antigüedad: 12 años, 8 meses
Puntos: 37
Respuesta: porque no me cambia los datos de mi funcion

Entonces pon el código, sin código no podemos ayudarte... es una de las reglas del foro
  #5 (permalink)  
Antiguo 10/09/2011, 08:53
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

Raziel_Ravenheart perdona pero no me aspiras confianza, lo siento pero dudo que me puedas ayudar, lo dejo para los entendidos de este lenguaje, ademas puse esta duda que tenia pero tampoco me las respondido, lo siento es mi opinion.

Cita:
Mi duda tambien es, que si la funcion javascript funciona y cambio los valores de la consulta sql asincronicamente, debe funcionarme la funcion javascript sin recargar la pagina?
  #6 (permalink)  
Antiguo 10/09/2011, 09:42
Avatar de Raziel_Ravenheart  
Fecha de Ingreso: agosto-2011
Ubicación: Ibagué, Tolima
Mensajes: 192
Antigüedad: 12 años, 8 meses
Puntos: 37
Respuesta: porque no me cambia los datos de mi funcion

Te estoy diciendo... sin código nadie te puede ayudar.. y si no me crees... creele a un experto que respondio este otro post del foro:

http://www.forosdelweb.com/f77/cargar-combo-php-sin-recargar-pagina-483617/

Exitos
  #7 (permalink)  
Antiguo 11/09/2011, 16:24
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

Hola de nuevo, Raziel_Ravenheart en ese link que me has posteado no me dice nada, si que es verdad que hay dan el codigo que piden, pero repito esto no es lo que yo quiero, yo no quiero que me den un codigo solo que me ayuden con mi problema.
  #8 (permalink)  
Antiguo 11/09/2011, 17:34
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 6 meses
Puntos: 890
Respuesta: porque no me cambia los datos de mi funcion

Cita:
Iniciado por pithon Ver Mensaje
Hola de nuevo, Raziel_Ravenheart en ese link que me has posteado no me dice nada, si que es verdad que hay dan el codigo que piden, pero repito esto no es lo que yo quiero, yo no quiero que me den un codigo solo que me ayuden con mi problema.
Supongo que cuando vas al medico haces lo mismo, te sientas y esperas a que el adivine que es lo que te pasa, verdad...
Lo que hay que leer ¬¬
__________________
Drupal Argentina
  #9 (permalink)  
Antiguo 11/09/2011, 17:53
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: porque no me cambia los datos de mi funcion

buenas,
lo más seguro es que los datos dinámicos para la consulta lo estas tomando de forma fija. es decir, cada vez que haces la consulta no actualizas la variable que contiene los datos. en tal caso, no te va servir recargar la página porque eso provocaría que la aplicación se reinicie. la única forma viable es con ajax, y cuando recibas la respuesta actualizar la variable con la que se realiza la consulta. espero haber entendido el dilema porque la verdad tengo mis dudas.

__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #10 (permalink)  
Antiguo 11/09/2011, 17:57
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: porque no me cambia los datos de mi funcion

Puede que el problema esté en la línea 13, pero no estoy seguro. Es mejor que @zerokilled saque su bola de cristal porque es el único de nosotros con poderes adivinatorios.
Saludos.
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #11 (permalink)  
Antiguo 12/09/2011, 06:40
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: porque no me cambia los datos de mi funcion

Todo el foro se basa en la confianza mutua los que saben responden y los que no saben preguntan y al final todos aprendemos de todos....

A tu pregunta la respuesta es revisa la parte de tu codigo donde pasas los datos de un lenguaje a otro, mediante AJAX como ya te han dicho....

Si pones tu codigo igual se te puede ayduars indicando exactamente donde tienes el error pero si no lo pones no se puede decir nada mas... y esto ya te lo ha respondido Raziel_Ravenheart en su primer post....

¿Por cierto el ejemplo del medico lo has entendio?
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #12 (permalink)  
Antiguo 12/09/2011, 07:41
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

quimfv hola, bueno en principio perdonar a todos por hacer que os pongais asin, no era mi intencion, y quimfv claro que he entendido lo del medico pero antes de que el medico te mire no te pregunta o te mira directo. A ver yo crei que alomejor no era necesario postear codigo, y creo que ya encontre mi error, yo la consulta cambio los datos asincronicamente pero cuando paso los datos de php a javascript no utilizo ajax, es aqui mi error?tengo que usar ajax para actualizar los arrays que vuelco de php a javascript?yo creia que la consulta que al cambiar la consulta con ajax cambiaban los arrays pero ya veo que no, zerokilled me entendio era esto lo que me pasaba.

Saludos.

Última edición por pithon; 12/09/2011 a las 07:53
  #13 (permalink)  
Antiguo 12/09/2011, 09:57
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

Hola, no lo he conseguido hacer, posteo codigo por si alguien me quiere ayudar.


aqui creo un objeto ajax para recuperar los datos de forma asincronica con un select.

funcion.js
Código Javascript:
Ver original
  1. function objetoAjax()   {
  2.     if (window.XMLHttpRequest)
  3.         _ajax = new XMLHttpRequest();
  4.     else
  5.         if (window.ActiveXObject)
  6.             _ajax = new ActiveXObject("Microsoft.XMLHTTP");
  7.         else
  8.             _ajax = false;
  9.     return _ajax;
  10. }
  11.  
  12.  
  13. function pedir(dato) {
  14. Ajax = objetoAjax();
  15. Ajax.open("get","recuperar.php?numero=" + dato, true);
  16. Ajax.onreadystatechange = function() {
  17.   if (Ajax.readyState == 4 && (Ajax.status == 200 || Ajax.status == 501)){
  18.    document.getElementById('ajax_datos').innerHTML=Ajax.responseText;
  19.     }
  20.  }
  21.  Ajax.send(null);
  22. }

aqui el script principal donde tengo el select para recuperar el valor de mi consulta de forma asincronica y el div donde me tiene que cargar los datos


codigo.php

Código PHP:
Ver original
  1. <html>
  2.     <head>
  3.         <script type="text/javascript" language="javascript" src="funcion.js"></script>
  4.     </head>
  5.     <body>
  6. <?php
  7. $con=mysql_connect("localhost","root","");
  8. $consulta="select * from prueba";
  9. $reg=mysql_query($consulta);
  10. ?>
  11.  
  12. <select name="codigo" id="codigo" onchange="pedir(document.getElementById('codigo').value)">
  13.     <option value="">seleciona numero</option>
  14.  <?php
  15.  while ($row=mysql_fetch_assoc($reg)){
  16.     ?>
  17.     <option value="<?php echo $row['numero']; ?>"><?php echo $row['numero'];?></option>
  18. <?php  
  19. }
  20. ?>
  21. </select>
  22.  
  23.  <div id="ajax_datos"></div>
  24.     </body>
  25. </html>


y aqui la pagina donde recupero los datos para pasarlos al div ajax_datos, en este script
esta la funcion js que no me funciona.


recuperar.php

Código PHP:
Ver original
  1. <?php
  2. $con=mysql_connect("localhost","root","");
  3. $consulta="select * from prueba where id=".$_GET['codigo']." ";
  4. $reg=mysql_query($consulta);
  5. $servicio_id=array();
  6. while ($row = mysql_fetch_assoc($reg)){
  7. $numero[]= $row['numero'];
  8. }
  9. ?>
  10.  
  11.  
  12. <script language='javascript'>
  13.  
  14. var numero = new Array();
  15.  
  16.  
  17. <?php
  18. for ($i = 0, $total = count($numero); $i < $total; $i ++)
  19. echo "\nnumero[$i] = '$numero[$i]';";
  20. ?>
  21.  
  22.  
  23. var pos = 0;
  24.  function MostrarRegistos(){
  25.    
  26.     for (i=1;i<=2;i++){
  27.        
  28.              num = numero[pos];
  29.  
  30. document.getElementById("registro"+i).innerHTML ='<p>' + num + '</p>';
  31.  
  32.                      
  33.                      pos++;
  34.                 if(pos>=(numero.length)){pos = 0}
  35.             }
  36.         }
  37.            
  38.         window.onload = MostrarRegistos;
  39.        
  40.         setInterval(MostrarRegistos,4000)
  41.        
  42. </script>
  43.     </head>
  44.     <body>
  45.            
  46.             <div  id="registro1"></div>
  47.             <div  id="registro2"></div>
  48.            
  49.        
  50.         </body>
  51. </html>

Realmente no se como hacer para que me carge la funcion js sin recargar pagina ya que la consulta si me la cambia de forma asincronica pero no la funcion js, saludos.

Última edición por pithon; 12/09/2011 a las 10:32
  #14 (permalink)  
Antiguo 12/09/2011, 11:21
 
Fecha de Ingreso: agosto-2008
Mensajes: 198
Antigüedad: 15 años, 9 meses
Puntos: 27
Respuesta: porque no me cambia los datos de mi funcion

Con el innerHTML de la funcion pedir(funcion.js) no vas a poder ejecutar el javascript de recuperar.php.
Un opción sería que el archivo recuperar php devolviera sólo el arreglo "numero", en algún formato como XML o JSON. Después tomas eso y lo trabajas con tu función js MostrarRegistros, la cual debiera esta en el archivo "funcion.js", no en "recuperar.php".

Saludos.
  #15 (permalink)  
Antiguo 12/09/2011, 11:41
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años
Puntos: 5
Respuesta: porque no me cambia los datos de mi funcion

pithon mirate este tutorial te ira bien.

http://www.tutorial-enlace.net/tutor...rios-1763.html

Última edición por roboty; 12/09/2011 a las 11:52
  #16 (permalink)  
Antiguo 12/09/2011, 11:57
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

refreegrata gracias por responder, la verdad que no lo acabo de entender bien si me pudieras poner un pequello ejemplo, saludos.
  #17 (permalink)  
Antiguo 12/09/2011, 12:42
 
Fecha de Ingreso: agosto-2008
Mensajes: 198
Antigüedad: 15 años, 9 meses
Puntos: 27
Respuesta: porque no me cambia los datos de mi funcion

Mira, algo como borrar en tu archivo "recuperar.php" desde la línea 11 en adelante y colocar algo como:
Código:
...
while ($row = mysql_fetch_assoc($reg)){
  $numero[]= $row['numero'];
}
echo json_encode($numero);
?>
y en tu archivo funcion.js

Código:
function objetoAjax()   {
 ....
}

var numero = new Array();
function pedir(dato) {
Ajax = objetoAjax();
Ajax.open("get","recuperar.php?codigo=" + dato, true);
Ajax.onreadystatechange = function() {
  if (Ajax.readyState == 4 && (Ajax.status == 200 || Ajax.status == 501)){
        numero = eval(Ajax.responseText);
        MostrarRegistros();
    }
 }
 Ajax.send(null);
}

function MostrarRegistros(){
    var contenido = '';
    var longitud = numero.length;
    for (i = 0; i< longitud; i++)
                contenido += '<div id="registro'+i+'"><p>'+numero[i]+'</p></div>';
    document.getElementById('ajax_datos').innerHTML = contenido;
}
Otro problema que tienes es que estás llamando al fichero "recuperar.php" pasando como variable en el get "numero" y en "recuperar.php" estás intentando capturar la variable "codigo", debieran tener el mismo nombre.

Obviamente el código que te presento no tiene consideraciones de seguridad, eficiencia, ni nada, eso debiera correr por tu cuenta, tampoco se si lo devuelto por recuperar.php va a ser usado en algo más, pero eso ya es harina de otro costal.
  #18 (permalink)  
Antiguo 13/09/2011, 06:33
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

refreegrata gracias por tu respuesta, ahi alguna otra forma de hacerlo?realmente no veo donde esta el intervalo de tiempo para mostrar la funcion, si alguien me podria decir otra forma de hacer funcionar el js.

Saludos.
  #19 (permalink)  
Antiguo 13/09/2011, 06:53
 
Fecha de Ingreso: agosto-2008
Mensajes: 198
Antigüedad: 15 años, 9 meses
Puntos: 27
Respuesta: porque no me cambia los datos de mi funcion

Y cuál es el problema, no te funciona?, para que deseas el intervalo de tiempo?, Bueno, ese no es mi problema, pero fácilmente puedes editar las funciones presentadas en "funcion.js" para colocar eso, antes de llamar a mostrar registros, después, dar un intervalo para llamarla, o donde sea; no veo complicación alguna, y eso que mis conocimientos de javascript son bastante rudimentarios. Saludos.
  #20 (permalink)  
Antiguo 13/09/2011, 06:59
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

refreegrata esque la funcion js lo que hace es eso mostrar los resultados de mi tabla en dos en dos y claro tengo que darle un intervalo de tiempo.

Hay otra manera de actualizar de forma asincronica la variable que contiene la consulta sql una vez se cambia la consulta de forma asincronica?como bien dijo zerokilled.

saludos

Última edición por pithon; 13/09/2011 a las 07:04
  #21 (permalink)  
Antiguo 13/09/2011, 07:27
 
Fecha de Ingreso: agosto-2008
Mensajes: 198
Antigüedad: 15 años, 9 meses
Puntos: 27
Respuesta: porque no me cambia los datos de mi funcion

Creo que no consigo captar totalmente lo que quieres, pero al hacer el "eval" de la respuesta JSON vas a tener un array completo. Y recorriendo ese de 2 en 2 puedes lograr el efecto, editando MostrarRegistros, usando setInterval y lo que necesites.

Ahora, si por el contrario, la consulta sql devuelve demasiados registros y no los quieres recibir todos de un sólo paraguaso puedes hacer múltiples llamadas a "recuperar.php" en el cuál deberías hacer la consulta con un LIMIT 2 y un OFFSET, pasado como para adicional en la url, junto al código. Y cuando ya no haya más registros, desde "recuperar.php" devolver alguna especie de bandera indicando tal situación, para así dejar de realizar llamadas. Y obviamente jugar con setInterval en "funcion.js" donde corresponda.
  #22 (permalink)  
Antiguo 13/09/2011, 08:37
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

No se como incrementar ajax cuando paso los valores de php a javascript para que cambien los valores de los arrays de forma asincronica, nadie me puede ayudar?
  #23 (permalink)  
Antiguo 13/09/2011, 10:57
 
Fecha de Ingreso: agosto-2008
Mensajes: 198
Antigüedad: 15 años, 9 meses
Puntos: 27
Respuesta: porque no me cambia los datos de mi funcion

El archivo recuperar.php de ninguna manera podrá quedar esperando más parámetros para devolver una respuesta pausada. Recibe parámetros, procesa, devuelve la respuesta y termina su ejecución. Si lo llamas otra vez se ejecutará todo de nuevo, por esto deberás dar parámetros adicionales (por GET o POST) de forma que no siempre devuelva la misma respuesta.

Sin consideraciones de velocidad, comprobación de la conexión, parámetros incorrectos u otros factores, podrías hacer algo como:
Código:
function objetoAjax()   {
...
}
 

var dato, offset, procesamiento = null;

function limpiar(){
	try { window.clearInterval(procesamiento); }catch(e) {}
	offset = 0;
	procesamiento = null;
	dato = null;
}

function pedir_auxiliar() {
	var Ajax = objetoAjax();
	Ajax.open("get","recuperar.php?codigo=" + dato + '&offset='+offset, true);
	Ajax.onreadystatechange = function() {
		if (Ajax.readyState == 4 && (Ajax.status == 200 || Ajax.status == 501)){
        		var retorno  = eval(Ajax.responseText);
			if(retorno == null) limpiar();
			else	MostrarRegistros(retorno);
		}
	}
	Ajax.send(null);
	offset +=2;
}

function pedir(seleccion) {
	limpiar();
        dato = seleccion;
	procesamiento = window.setInterval(pedir_auxiliar,4000);
}

function MostrarRegistros(numero){
    ...}
Es decir, declarar variables globales e iniciar un nuevo intervalo cada vez que se llama a pedir.
También deberás pasar un parámetro adicional a recuperar.php (en este caso offset) para que este sepa en que parte del ciclo vas.

Por último deberás definir una bandera a retornar por recuperar.php (en este caso null) para así saber en funcion.js cuando detener el intervalo.

En recuperar.php, obviamente, deberás filtrar la consulta con LIMIT y OFFSET (según el parámetro nuevo).
  #24 (permalink)  
Antiguo 13/09/2011, 11:08
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

refreegrata, realmente no entiendo, yo esa consulta sql donde luego muestro los datos en dos en dos, si la pongo de forma estatica funciona bien, osea me muestro los datos en dos en dos, pero yo simplemente quiero poder cambiar la consulta de forma asincronica con un select, osea que una vez llamo a la funcion js me muestra los datos como yo quiero lo que pasa que no lo logro incrementar ajax para cambiar los datos de los arrays javascript, no se si me explique bien, de todas formas agradezco mucho tu colaboracion, quizas soy yo que no me explico bien, saludos.
  #25 (permalink)  
Antiguo 13/09/2011, 11:34
 
Fecha de Ingreso: agosto-2008
Mensajes: 198
Antigüedad: 15 años, 9 meses
Puntos: 27
Respuesta: porque no me cambia los datos de mi funcion

Disculpa, pero no entiendo a que te refieres con "si la pongo de forma estática funciona bien". Si te refieres a acceder directamente desde la barra de direcciones del navegador a "recuperar.php?..", con un código como el que posteaste obviamente debería funcionar, pero no puedes pretender, con javascript - ajax, tomar ese retorno, anexarlo con innerHTML y esperar que se ejecute automáticamente todo el javascript que en "recuperar.php" escribiste. Eso no funcionará así; al menos no de manera trasparente. Tal vez devolviendo cadenas, usando eval, funciones dinámicas o cualquier otro truco sí, pero no sería la idea. Según lo veo tu código en recuperar.php debería ser algo como:
Código:
<?php
$con=mysql_connect("localhost","root","");
mysql_select_db("db");
$consulta='select * from prueba where id='.$_GET['codigo'].'  LIMIT 2 OFFSET='.$_GET['offset'];
$reg=mysql_query($consulta);
$numero = null;
while ($row = mysql_fetch_assoc($reg)){
    $numero[]= $row['numero'];
}
echo json_encode($numero);
?>
Y nada más, obviamente con validaciones y todo lo demás, pero algo así.
  #26 (permalink)  
Antiguo 13/09/2011, 18:38
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

refreegrata, de forma estatica me refiero a que si la consulta le añado yo el valor osea esta linea:

Código PHP:
Ver original
  1. $consulta="select * from prueba where id=".$_GET['codigo']." ";

ponerla asin:

Código PHP:
Ver original
  1. $consulta="select * from prueba where id=34 ";
asin si funciona el js.

Pero como tu me dices no lo acabo de entender bien, yo realmente quiero reflescar los arrays javascript de forma asincronica y llamar a la funcion js cada vez que reflesco la consulta, en el codigo que postee arriba la consulta si me cambia pero no se como hacer para refrescar los datos del js sin recargar pagina.


Saludos
  #27 (permalink)  
Antiguo 14/09/2011, 06:24
 
Fecha de Ingreso: agosto-2008
Mensajes: 198
Antigüedad: 15 años, 9 meses
Puntos: 27
Respuesta: porque no me cambia los datos de mi funcion

Mira, no se si cambiaste las cosas como te dije antes, pero en el primer código que posteaste colocaste esto:

En funcion.js
Código:
Ajax.open("get","recuperar.php?numero=" + dato, true);
y en recuperar.php
Código:
$consulta="select * from prueba where id=".$_GET['codigo']." ";
Te das cuentas que estás enviando una variable llamada "numero", pero en recuperar.php estás intentando recibir una llamada "codigo"?, por que obviamente deben tener el mismo nombre.

Con eso corregido deberías poder llamar y recibir a menos una respuesta existosa desde recuperar.php. Ve eso primero y luego intenta corregir lo de los intervalos. Si ya lo corregiste avisa.
  #28 (permalink)  
Antiguo 14/09/2011, 06:52
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

refreegrata eso ya lo corregi, pero yo lo que quiero es cuando llamo a la funcion pedir (dato), que es lo que me cambia la consulta de manera asincronica, quiero tambien llamar a la funcion js pero claro con la consulta cambiada segun la opcion selecionada en el select.

saludos.
  #29 (permalink)  
Antiguo 14/09/2011, 07:04
 
Fecha de Ingreso: agosto-2008
Mensajes: 198
Antigüedad: 15 años, 9 meses
Puntos: 27
Respuesta: porque no me cambia los datos de mi funcion

Yo creo que deberías repostear tu código para ver las nuevas modificaciones que has hecho y así poder identificar de manera más clara el problema. A proósito, no se si usas alguna herramienta con firebug u otra que sirva para depurar el código javascript. Con eso podrías ver si hay un error por ese lado, observar si se realiza alguna llamada con ajax , lo parámetros enviados y las respuestas recibidas. Eso te sería de mucha ayuda.

Última edición por refreegrata; 14/09/2011 a las 07:09
  #30 (permalink)  
Antiguo 14/09/2011, 07:11
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: porque no me cambia los datos de mi funcion

refreegrata esque el codigo lo volvi a modificar y lo tengo como al principio, yo solo quiero que cuando seleciono una opcion en el select recuperar la funcion js con los datos de la consulta selecionada y mostrarlo en el div ajax_datos.

pero sin cambiar la funcion ya que una vez carge la funcion no tiene que volver hacer mas peticiones al servidor, solo cuando vuelva a selecionar otra opcion que volvera a cambiar los datos de la consulta, osea que cuando me carge la funcion js con la consulta selecionada esta funcion lo que hace es mostrar en dos en dos los datos que ya estan cargados en los arrays, esto es lo que necesito, no se si me podras ayudar. pero gracias por tu colaboracion.

Saludos.

Etiquetas: funcion, php, cambios
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 10:25.