Foros del Web » Programando para Internet » PHP »

Como se recogen los checkboxs marcados en una tabla?

Estas en el tema de Como se recogen los checkboxs marcados en una tabla? en el foro de PHP en Foros del Web. Hola! Ojalá me ayuden! ...Tengo una tabla que se rellena con ajax y no sé como recoger los checkbox que se marcan para pasarlos a ...
  #1 (permalink)  
Antiguo 20/07/2009, 10:40
 
Fecha de Ingreso: julio-2009
Ubicación: En PHPlandia, AJAXia y JavaScriptín
Mensajes: 34
Antigüedad: 14 años, 9 meses
Puntos: 0
Como se recogen los checkboxs marcados en una tabla?

Hola! Ojalá me ayuden!

...Tengo una tabla que se rellena con ajax y no sé como recoger los checkbox que se marcan para pasarlos a eliminar.php, aceptar.php y denegar.php

Estuve mirando en la FAQ pero no encontré nada que me sirviera...

ConsultaDatos.php


Código PHP:
<?php

require("connect.inc.php");

$datos=mysql_query("...consulta...");

echo 
"<table>
    <tbody>
    <tr>
      <td><input name=\"checkall\" type=\"checkbox\" id=\"checkall\" value=\"checkall\" onclick=\"checkAll();\" />
      <td><p><strong><span> Usuario </span></strong></p></td>
      <td><p><strong><span> Estado </span></strong></p></td>
    </tr>"
;
$var=1;
while(
$dcg mysql_fetch_array($datos))
{
    echo 
"<tr><td><input type=\"checkbox\" name=\"checkbox".$var."\" /></td>
        <td>"
.$dcg['usuario']."</td>
        <td>"
;
    if(
$dcg['estado'] == 'aceptado')
        echo 
"<td style=\"color: green;\">".$dcg['estado']."</td></tr> \n";
    else if(
$dcg['estado'] == 'denegado')
        echo 
"<td style=\"color: red;\">".$dcg['estado']."</td></tr> \n";
    else 
        echo 
"<td style=\"color: grey;\">".$dcg['estado']."</td></tr> \n";
    ++
$var;
}
echo 
"</tbody></table>";
?>
<table border="0" cellspacing="1" cellpadding="1">
  <tr>
        <td> <a href="../php/actualizar.php"> 
         <img type="image" src="../img/tick.png" alt="Aceptar" /></a></td>
        <td> <a href="../php/actualizar.php"> 
         <img type="image" src="../img/cross.png" alt="Denegar" /></a></td>
        <td> <a href="../php/actualizar.php"> 
         <img type="image" src="../img/bin_closed.png" alt="Eliminar" /></a></td>
  <tr>
  
</table>
Mil gracias!
  #2 (permalink)  
Antiguo 20/07/2009, 11:07
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 8 meses
Puntos: 105
Respuesta: Como se recogen los checkboxs marcados en una tabla?

Holas,

Podrias aumentar una propiedad mas en la etiqueta HTML input del checkbox, dentro del while:

echo "<tr><td><input type=\"checkbox\" name=\"checkbox".$var."\" value=\".$dcg['id_tabla'].\" /></td>
<td>".$dcg['usuario']."</td>
<td>";



Y para que los recibas, bueno con javascript, podrias parsearla y luego enviarla en una cadena separados por guiones o comas, etc.


Saludos
Gildus
__________________
.: Gildus :.
  #3 (permalink)  
Antiguo 20/07/2009, 11:11
 
Fecha de Ingreso: julio-2009
Ubicación: En PHPlandia, AJAXia y JavaScriptín
Mensajes: 34
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Como se recogen los checkboxs marcados en una tabla?

A ver, he hecho algunos cambios:

- Le he puesto un value a los checkbox, que corresponde con el campo id
Código PHP:
echo "<tr><td>
<input type=\"checkbox\" name=\"checkbox[]\" value=\""
.$dcg[9]."\" />
</td> 
- He puesto las cabeceras del form con POST

- He creado aceptar.php de la siguiente forma:

Código PHP:
<?
require("connect.inc.php");

if(
$_POST['checkbox']==true
{
  foreach (
$_POST['checkbox'] as $v
  {
    
$sql "UPDATE tabla SET estado = 'aceptado' WHERE id = $v";
    
$res mysql_query($sql,$con);
   }
}
?>
<script> parent.location.href = 'ConsultaDatos.php'; </script>

pero aún así no me modifica los campos, es como si no ocurriese nada

Última edición por Piccolina; 20/07/2009 a las 11:30 Razón: Habia escrito mal la instruccion $sql = "UPDATE tabla SET estado = 'aceptado' WHERE id = $v";
  #4 (permalink)  
Antiguo 20/07/2009, 11:13
 
Fecha de Ingreso: julio-2009
Ubicación: En PHPlandia, AJAXia y JavaScriptín
Mensajes: 34
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Como se recogen los checkboxs marcados en una tabla?

Cita:
Iniciado por gildus Ver Mensaje
Holas,

Podrias aumentar una propiedad mas en la etiqueta HTML input del checkbox, dentro del while:

echo "<tr><td><input type=\"checkbox\" name=\"checkbox".$var."\" value=\".$dcg['id_tabla'].\" /></td>
<td>".$dcg['usuario']."</td>
<td>";
¿No haría falta filtrar las comillas dobles? Yo lo puse así value=\" ".$dcg['id_tabla']." \"
  #5 (permalink)  
Antiguo 20/07/2009, 12:40
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 8 meses
Puntos: 105
Respuesta: Como se recogen los checkboxs marcados en una tabla?

Porque no antes de hacer el submit ves con un alert() los valores de tu checkbox1,checkbox2, ....


Saludos
Gildus
__________________
.: Gildus :.
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 12:49.