Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/10/2011, 09:26
hiram_ramirez8
 
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.                                                                                 }