Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/10/2011, 19:51
hiram_ramirez8
 
Fecha de Ingreso: enero-2011
Mensajes: 104
Antigüedad: 13 años, 3 meses
Puntos: 0
Información Como recojer el valor elegido de un ciclo foreach y pasar el valor a javascript(AJAX)

Tengo el siguiente problema, tengo un ciclo foreach donde pongo que me pinte varios links, cada link tiene un id que es mi variable $key, pero mi problema es como hacer que ese valor lo tome el javascript porngo los codigos:

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' id="palabras"><?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' id="palabras"><?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. ?>
y en el JS mi variable "valor" tengo que recojer el dato dinamicamente, cuando dan click en algune link que pinto, pero como lo tengo ahorita expresado es de forma manual osea yo puse var valor = document.getElementById('palabra[0]').value; <-- y eso esta mal, lo tiene que recojer dinamicamente
Código Javascript:
Ver original
  1. function enviar_palabras(_pagina,valor1,capa) {
  2.                
  3.        
  4.         var valor = document.getElementById('palabra[0]').value;
  5.         alert(valor);
  6.        
  7.         var ajax;
  8.                 ajax = obtenerXHR();
  9.                         ajax.open("GET",'recibir_palabras.php?palabra='+valor, true);
  10.                                 ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  11.                                         ajax.onreadystatechange = function() {
  12.                                                 if (ajax.readyState==1){
  13.                                                 document.getElementById('ajax').innerHTML = "<img src='loader.gif' align='center' /> Aguarde por favor...";
  14.                                                 }
  15.                                                 if (ajax.readyState == 4) {
  16.                                                         document.getElementById('ajax').innerHTML = ajax.responseText;
  17.                                                         }
  18.                                                                 }
  19.                                                                         ajax.send(null);
  20.                                                                                 }