Foros del Web » Programando para Internet » PHP »

Asignacion de Trabajo con Php

Estas en el tema de Asignacion de Trabajo con Php en el foro de PHP en Foros del Web. Buen dia. Les comento, en mi empresa nesesitamos asignar ciertos elementos a un trabajo, es decir como una carga de trabajo. De momento ya el ...
  #1 (permalink)  
Antiguo 06/07/2012, 17:32
 
Fecha de Ingreso: marzo-2011
Ubicación: San Salvador
Mensajes: 49
Antigüedad: 8 años, 3 meses
Puntos: 0
Información Asignacion de Trabajo con Php

Buen dia.

Les comento, en mi empresa nesesitamos asignar ciertos elementos a un trabajo, es decir como una carga de trabajo.

De momento ya el proyecto esta montado solo falta ese punto, el sistema toma de una BDD ciertos codigos y los muestras en forma de boton en una tabla, cada usuario tiene que selecionar uno y trabajarlo.

Ahora bien el problema que me he topado es que cuando yo selecciono el boton codigo 1 (como ejemplo) y empiezo a trabajarlo, mi compañero puede tener acceso a el cosas que no deberia ya que cada quien tiene que tener un codigo asignado hasta que terminen o hasta que cierren el navegador.

La idea que nesesito es: Como hacer que cuando un usuario pulse el boton codigo 1 el siguiente usuario trate de pulsarlo en otra sesion no lo deje pulsar o lo muestre como deshabilitado.

Este punto me dando dolores de cabeza y por eso recuro a ustedes como comunidad.

De antemano gracias.
  #2 (permalink)  
Antiguo 06/07/2012, 17:59
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 9 años, 7 meses
Puntos: 168
Respuesta: Asignacion de Trabajo con Php

Simple, cuando lo pulses, usa un estado bandera en tu tabla de base de datos, con un campo que se llama "EnUso" por ejemplo, entonces cuando alguien pulse ese botón se hace un UPDATE ( actualización ) de ese campo y se pone a 1, significa que esta en uso, y cuando ya no lo uses al boton, que no se como lo evaluas si es cuando cerras la sesión entonces haces el UPDATE del campo "EnUso" y lo pones a 0.
Luego solo cuando pulsas sobre el botón lo primero es evaluar en que estado esta el valor del campo "EnUso" si esta en 0 entonces no esta en uso por otra persona y ahi hace lo que quieras, pero si esta en 1 ahi esta en uso y no podes hacer nada.
  #3 (permalink)  
Antiguo 07/07/2012, 08:51
 
Fecha de Ingreso: marzo-2011
Ubicación: San Salvador
Mensajes: 49
Antigüedad: 8 años, 3 meses
Puntos: 0
Respuesta: Asignacion de Trabajo con Php

Cita:
Iniciado por rodrigo791 Ver Mensaje
Simple, cuando lo pulses, usa un estado bandera en tu tabla de base de datos, con un campo que se llama "EnUso" por ejemplo, entonces cuando alguien pulse ese botón se hace un UPDATE ( actualización ) de ese campo y se pone a 1, significa que esta en uso, y cuando ya no lo uses al boton, que no se como lo evaluas si es cuando cerras la sesión entonces haces el UPDATE del campo "EnUso" y lo pones a 0.
Luego solo cuando pulsas sobre el botón lo primero es evaluar en que estado esta el valor del campo "EnUso" si esta en 0 entonces no esta en uso por otra persona y ahi hace lo que quieras, pero si esta en 1 ahi esta en uso y no podes hacer nada.
Muchas gracias por la ayuda adjunto tambien el codigo que tengo

Código PHP:
        //inicio mi conexion y variables globales
        
include('conexion.php');
    global 
$Html$Pagina;
        
         
//empiezo a generar el grid que contendra los botones con sus numero
    
$grid="";
    
$grid .="<table align='center' border='1'>";
    
$grid .="<tr>
            <td>Numero</td>
            <td>Cantidad</td>
            <td>Fecha </td>
         </tr>"
;
        
/*este es el query que va a buscar a la base un estado que me sirve de badera para poder determinar si el numero del boton esta disponible para su trabajo y asi se asigna*/ 
    
$sql="select numero,count(*) from tabla_consulto where estado=0 group by 1";
    
       
/*inicio el while que genera uno  a uno de los botones que saque del query anterior*/
    
$existe=0;
    
$respuesta=$dbh->query($sql);
    while (
$row=$respuesta->fetch(PDO::FETCH_NUM))
    {
        
$numero  =$row[0];
        
$cantidad=$row[1];
        
        
$grid .=
        
"<tr>
        <td>
        <form id='form_"
.$numero."' method='post'  action='$Pagina?prc=procesar'>
        
        <input type='submit' name='numero' id='numero'  value='$numero'>
        </td>
        <td>$cantidad</td>
        <td>"
.fechaini()."</td>
        </form>
        </tr>"
;
            
    }
    
$grid.="</table><div></div>";
$Html .=$grid

Este seria el codigo principal, me perdi donde dices que ponga una bandera para la base, es decir donde evaluaria eso en este codigo o en codigo al que dirijo las variables.

Talvez puede parecer trivial pero si estoy un poco perdido esta es la primera vez que implento este tipo de sistemas de antemano gracias.

Etiquetas: boton+condicion, sesión, bbdd
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 06:26.