Foros del Web » Programando para Internet » PHP »

[Solucionado!!!] Multiples Checkbox

Estas en el tema de [Solucionado!!!] Multiples Checkbox en el foro de PHP en Foros del Web. hola a todos..tengo una duda y desde ya gracias por estar leyendo el post. necesito saber como se hace lo siguiente.. procesar un conjunto de ...
  #1 (permalink)  
Antiguo 31/08/2004, 15:47
Avatar de HiTek  
Fecha de Ingreso: noviembre-2003
Ubicación: LF, Santiago.Chile
Mensajes: 217
Antigüedad: 14 años
Puntos: 0
[Solucionado!!!] Multiples Checkbox

hola a todos..tengo una duda y desde ya gracias por estar leyendo el post.

necesito saber como se hace lo siguiente..

procesar un conjunto de elementos que se seleccionan a traves de checkboxes, seleccionar una opcion X (eliminar, modificar por ej.) y que otro script en php procese todos los datos...

similar a lo que se hace cuando se eliminan correos electronicos desde la bandeja de entrada (inbox).

saludos y gracias por responder a quienes lo hagan...

sería ideal que escribieran algo de codigo para ver como se hace :D gracias!!!





Código PHP:
<form name="form1" method="post" action="ver.php">
  <table width="33%" border="0">
<?
    
include("functions/include.php");
    
$link=conectar();
    
$sql="select id from tabla";
    
$res=mysql_query($sql);
    while(
$rs=mysql_fetch_array($res)){
?>
    <tr> 
      <td width="15%"><input type="checkbox" name="chkbox[]" value="checkbox<? echo $rs["id"]; ?>">
      </td>
      <td width="85%"><? echo $rs["id"]; ?></td>
    </tr>
<?
    
}
?>
  </table>
  <p>
    <input type="submit" name="Submit" value="Submit">
  </p>
</form>
Código PHP:
<?
    
for($i=$i<=count($_POST["chkbox"]); $i++)
        echo 
$_POST["chkbox"][$i]."\n";
?>
de momento es sólo mostrar los chkbox seleccionados y ahora haré klo que me plazca sobre ellos...gracias Mickel, a los que leyeron y a los que no...no!

salu2

Última edición por HiTek; 01/09/2004 a las 01:06 Razón: Solucionado!!!
  #2 (permalink)  
Antiguo 31/08/2004, 21:14
Avatar de Mickel  
Fecha de Ingreso: mayo-2002
Ubicación: Lima, Peru
Mensajes: 4.619
Antigüedad: 15 años, 6 meses
Puntos: 7
A ver. Supongamos que tienes esto. Esta parte es la seccion donde obtienes la data de una tabla, digamos "mensajes", que quieres eliminar

Código:
<form action='mipagina.php' method='post'>
<?php
$sqryvar="Select id_mensaje,titulo,enviado_por,fecha from mensaje where recibidopor=".$cuenta." order by fecha desc";
$iqryvar=mysql_query($sqryvar);
if ($iqryvar>0) {
   $irow=0;
   $ilimit=mysql_num_rows($iqryvar);
   while ($irow<$ilimit) {
      $imensaje=mysql_result($iqryvar,$irow,0);
      $stitulo=mysql_result($iqryvar,$irow,1);
      $senviadopor=mysql_result($iqryvar,$irow,2);
      $sfecha=mysql_result($iqryvar,$irow,3);
      echo "<input type='checkbox' name='".$imensaje."' value='".$imensaje."' /> ".$stitulo." ".$senviadopor." ".$sfecha."<br />";
      $irow++;
   }
}
?>
</form>
como veras, hemos recorrido la tabla para pintar los checkboxes, ahora lo que hay que hacer es recorrerla para leerlos

Código:
 
<?php
$sqryvar="Select id_mensaje from mensaje where recibidopor=".$cuenta;
$iqryvar=mysql_query($sqryvar);
if ($iqryvar>0) {
   $irow=0;
   $ilimit=mysql_num_rows($iqryvar);
   while ($irow<$ilimit) {
      $imensaje=mysql_result($iqryvar,$irow,0);
      if (strlen($$imensaje)>0) {
          $sqryexe="Delete from mensaje where id_mensaje=".$imensaje;
           mysql_query($sqryexe);
      }
      $irow++;
   }
}
?>
  #3 (permalink)  
Antiguo 31/08/2004, 23:28
Avatar de HiTek  
Fecha de Ingreso: noviembre-2003
Ubicación: LF, Santiago.Chile
Mensajes: 217
Antigüedad: 14 años
Puntos: 0
mmm Mickel grax por tu respuesta...haciendo una traza al script que me has regalado...lo que hace es eliminar todos los mensajes de una cuenta en particular...

el primer script los muestra pero el segundo elimina los mensajes de esa cuenta...todos...no solo los que he seleccionado.....
por ahi alguna vez vi algo acerca de un Ibound o Lbound o algo asi...gracias nuevamente MIckel...salu2
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:02.