Foros del Web » Programando para Internet » PHP »

problema con checkbox

Estas en el tema de problema con checkbox en el foro de PHP en Foros del Web. Buenas noches ! Tengo un problemilla con php y html, os explico, de la base de datos saco un listado de usuarios para dar permisos, ...
  #1 (permalink)  
Antiguo 22/11/2011, 16:21
 
Fecha de Ingreso: febrero-2010
Mensajes: 12
Antigüedad: 14 años, 2 meses
Puntos: 0
problema con checkbox

Buenas noches !

Tengo un problemilla con php y html, os explico, de la base de datos saco un listado de usuarios para dar permisos, por ejemplo de administrador.

Código PHP:
$users mysqli_query($dbc,"SELECT * FROM clientes");
                            
    
$cant = @mysqli_num_rows($users);
                        
    while(
$fila = @mysqli_fetch_array($users)){
                            
echo 
'
<form action="editpadmin.php?id='
.$fila["id_cliente"].'" method="POST">
    <table>
        <tr>
        <td width="100px" height="26px">
        '
.$fila["id_cliente"].'
        </td>
        <td width="180px" height="26px">
        '
.$fila["contacto"].'
        </td>
        <td width="120px" height="26px">
        '
.$fila["dnicif"].'
        </td>
        <td width="180px" height="26px">
        <a href="http://'
.$fila["website"].'" target="_blank">'.$fila["website"].'</a>
        </td>
        <td width="140px" height="26px">
        '
;
                            
        if (
$fila["admin"] == 1)
            {
            
$xek "checked";
            
$val "1";
            }
        else {
            
$xek "";
            
$val "0";
            }
        echo 
$fila['id_cliente']." ".$fila['admin']." ".$xek." ".$val;
        echo 
'<input type="checkbox" name="permisos" value="'.$val.'" id="'.$fila["id_cliente"].'" $xek /><label for="'.$fila["id_cliente"].'"></label>';
                            
        echo 
'
        </td>
        <td>
        <button type="submit">Guardar</button>
        </td>
        </tr>
        </form>
        </table>
        '

Este es el codigo con el que trabajo actualmente, el problema es que no me coje bien los datos, me los imprimie bien pero a la ora de meterlos en el input checkbox y enviarlos a otra pagina o se queda en blanco o me pone undefined index.

Al sacar un listado de los clientes el id del imput y el for de label deben de ser iguales y al mismo tiempo diferentes para el siguiente usuario, trabajo con el label ya que el checkbox usa imagenes ajenas.

Lamento la mala explicacion :D

Muchas gracias de antemano, si os falta codigo, cualquier pregunta lo que sea aki toy :D

salu2
  #2 (permalink)  
Antiguo 23/11/2011, 18:22
 
Fecha de Ingreso: febrero-2010
Mensajes: 12
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: problema con checkbox

solucionado adjunto el codigo por si alguien lo necesita

Código PHP:
Ver original
  1. $users = mysqli_query($dbc,"SELECT * FROM clientes");
  2.                            
  3.                             $cant = @mysqli_num_rows($users);
  4.                        
  5.                             while($fila = @mysqli_fetch_array($users)){
  6.                            
  7.                             echo '
  8.                             <form action="editpadmin.php?id='.$fila["id_cliente"].'" method="POST">
  9.                             <table>
  10.                             <tr>
  11.                             <td width="100px" height="26px">
  12.                             '.$fila["id_cliente"].'
  13.                             </td>
  14.                             <td width="180px" height="26px">
  15.                             '.$fila["contacto"].'
  16.                             </td>
  17.                             <td width="120px" height="26px">
  18.                             '.$fila["dnicif"].'
  19.                             </td>
  20.                             <td width="180px" height="26px">
  21.                             <a href="http://'.$fila["website"].'" target="_blank">'.$fila["website"].'</a>
  22.                             </td>
  23.                             <td width="140px" height="26px">
  24.                             ';
  25.                            
  26.                            
  27.                            
  28.                            
  29.                             echo '<input type="checkbox" name="'.$fila["id_cliente"].'" id="'.$fila["id_cliente"].'" ';
  30.                             if ($fila["admin"] == 1)
  31.                             {
  32.                                 echo "checked";
  33.                             }
  34.                            
  35.                             echo ' /><label for="'.$fila["id_cliente"].'"></label>';
  36.                            
  37.                             echo '
  38.                             </td>
  39.                             <td>
  40.                             <button type="submit">Guardar</button>
  41.                             </td>
  42.                             </tr>
  43.                             </form>
  44.                             </table>
  45.                             ';


y este es el codigo para insertar en la base de datos

Código PHP:
Ver original
  1. $id = $_GET['id'];
  2.  
  3. if ($_POST[$id] == "on")
  4. {
  5.     $permisos = 1;
  6. }
  7. else {
  8.     $permisos = 0;
  9. }
  10.  
  11. $p = mysqli_query($dbc,"UPDATE clientes SET admin = '$permisos' WHERE id_cliente =".$id);

saludos

Etiquetas: checkbox, html, imagenes, mysql, usuarios
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:47.