Foros del Web » Programando para Internet » PHP »

Pasar un arreglo de PHP a JavaScript para ejecutar AJAX

Estas en el tema de Pasar un arreglo de PHP a JavaScript para ejecutar AJAX en el foro de PHP en Foros del Web. Hola amigos tengo una duda,como puedo pasar un arreglo de php a javascript para hacer un ajax, lo que tengo es un ciclo en donde ...
  #1 (permalink)  
Antiguo 27/10/2011, 09:26
 
Fecha de Ingreso: enero-2011
Mensajes: 104
Antigüedad: 13 años, 3 meses
Puntos: 0
Información Pasar un arreglo de PHP a JavaScript para ejecutar AJAX

Hola amigos tengo una duda,como puedo pasar un arreglo de php a javascript para hacer un ajax, lo que tengo es un ciclo en donde paso un parametro pero el problema es que al dar click y mandarlo a la funcion de js tengo que especificar que numero le estoy mandando, pero como esta dentro de un ciclo no se como hacer para que me pase el dato que quiero, aqui les pongo codigo:

Código PHP:
Ver original
  1. <?php session_start(); ?>
  2. <?php include("server.php"); ?>
  3. <?php echo "<h1>Temas</h1>";
  4. $conexion = mysqli_connect($server_name,$server_user,$server_password) or die("Err - 196" . mysqli_connect_error());
  5. mysqli_select_db($conexion,$db_name);
  6. $select = " SELECT * FROM contenidos";
  7. $rsLabels = mysqli_query($conexion,$select) or die("Error - 196 Conexi&oacute;n Rechasada" . mysqli_connect_error());
  8.                 $cont=0;
  9.                 $r=0;
  10.                 while($rLabels = mysqli_fetch_array($rsLabels)){
  11.                     $etiquetas = $rLabels['etiquetas'];
  12.                     $comas = explode(',',$etiquetas);                    
  13.                     $array[] = array($cont => $comas);
  14.                     $arreglos[] = $array[$r][$cont];
  15.                     $cont++;
  16.                     $r++;
  17.                 }
  18.                 for($a=count($arreglos),$v=0;$v<$a;$v++){
  19.                     for($x=10,$y=0;$y<$x;$y++){
  20.                         $listo[] = $arreglos[$v][$y];
  21.                         $arraycontodo=$listo;
  22.                     }
  23.                 }
  24.                 $arrayss = array_values(array_diff($arraycontodo, array('')));
  25.                 $miarreglo_limpio = array_unique ($arrayss);
  26.                 foreach($miarreglo_limpio as $key => $values){
  27.                     $key;
  28.                     if($key%2==0) { ?>
  29.                                 <a href="javascript:enviar_palabras('recibir_palabras.php','ajax')" class='temas1'><?php echo $values ?></a>
  30.                                 <input type="hidden" id="palabra[<?php echo $key ?>]" name="palabra[<?php echo $key ?>]" value="<?php echo $values ?>"/>
  31.                          <?php   }else{ ?>
  32.                                 <a href="javascript:enviar_palabras('recibir_palabras.php','ajax')" class='temas2'><?php echo $values ?></a>
  33.                                 <input type="hidden" id="palabra[<?php echo $key ?>]" name="palabra[<?php echo $key ?>]" value="<?php echo $values ?>"/>
  34.                          <?php   }
  35.                 }
  36. ?>
Código Javascript:
Ver original
  1. function enviar_palabras(_pagina,valor1,capa) {
  2.         var valor = document.getElementById('palabra[0]').value;
  3.         alert(valor);
  4.        
  5.         var ajax;
  6.                 ajax = obtenerXHR();
  7.                         ajax.open("GET",'recibir_palabras.php?palabra='+valor, true);
  8.                                 ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  9.                                         ajax.onreadystatechange = function() {
  10.                                                 if (ajax.readyState==1){
  11.                                                 document.getElementById('ajax').innerHTML = "<img src='loader.gif' align='center' /> Aguarde por favor...";
  12.                                                 }
  13.                                                 if (ajax.readyState == 4) {
  14.                                                         document.getElementById('ajax').innerHTML = ajax.responseText;
  15.                                                         }
  16.                                                                 }
  17.                                                                         ajax.send(null);
  18.                                                                                 }
  #2 (permalink)  
Antiguo 27/10/2011, 09:37
 
Fecha de Ingreso: enero-2011
Mensajes: 104
Antigüedad: 13 años, 3 meses
Puntos: 0
Información Respuesta: Pasar un arreglo de PHP a JavaScript para ejecutar AJAX

la idea es pasar mi arreglo de php a js a la variable de js que se llama valor!!!
  #3 (permalink)  
Antiguo 27/10/2011, 10:12
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 18 años, 11 meses
Puntos: 394
Respuesta: Pasar un arreglo de PHP a JavaScript para ejecutar AJAX

Si la gente se tomara la molestia de buscar en GOOGLE encontraría cosas como ESTA
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #4 (permalink)  
Antiguo 27/10/2011, 10:20
 
Fecha de Ingreso: enero-2011
Mensajes: 104
Antigüedad: 13 años, 3 meses
Puntos: 0
Información

gracias por tu respuesta, pero eso no me sirve ya he intentado y buscado en muchos sitios, lo que pasa es que el codigo que tengo de js esta en otro archivo ageno al de php entonces no se en si como mandar el dato que necesito que es cuando se ejecuta el foreach se me generan varios links, todos con el identificador que da la variable $key en si es ese dato el que necesito mandar, sin tener ke especificar a mano como esta expresado en el codigo que les mostre

no quiero representar a mano la variable de js valor

Última edición por GatorV; 27/10/2011 a las 10:34

Etiquetas: ajax, arreglos
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 03:14.