Foros del Web » Programando para Internet » PHP »

Borrar asignación

Estas en el tema de Borrar asignación en el foro de PHP en Foros del Web. Hola, os cuento mi duda. Tengo una aplicación de gestión de una empresa, en el que tengo una asignación de horarios para empleados,maquinas y clientes. ...
  #1 (permalink)  
Antiguo 27/08/2008, 10:25
 
Fecha de Ingreso: septiembre-2007
Mensajes: 101
Antigüedad: 16 años, 7 meses
Puntos: 0
Borrar asignación

Hola, os cuento mi duda. Tengo una aplicación de gestión de una empresa, en el que tengo una asignación de horarios para empleados,maquinas y clientes. La asignacion me la hace correctamente. ahora viene el problema, al irme a desasginar el horario para dicho empleado, realizo una consutla con todos los campos, en base a esa cosnulta muestro una lista, que lo he echo con un formulario, y dentor de este he puesto un botón "checkbox" de borrado, pero al intentar activar la casilla para poder darle al boton de eliminar la asignacióin, me manda a otra pagina, entonces la pregunta es:

¿Que debo poner en el action del formulario para que me pueda activar esa casilla?

Gracias, un saludo
  #2 (permalink)  
Antiguo 27/08/2008, 10:30
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Borrar asignación

Hola mnv_19,

Muestra el código que estas utilizando, es probable que hayas agregado mal el campo del checkbox o que haya algún código Javascript de por medio.

Saludos.
  #3 (permalink)  
Antiguo 27/08/2008, 10:33
 
Fecha de Ingreso: septiembre-2007
Mensajes: 101
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Borrar asignación

PRIMERA PARTE

<?php
include("../sesion.php");
?>

<?php

if($accion=='anula'){
if($borra=="si"){
if($borrado=='S'){
$borrado="DELETE FROM horarios WHERE id_horario='$id_horario'";
$resultConsulta= mysql_query($borrado,$link);

?>
<script>
document.location.href='../comienzo.php';
</script>
<?
}
else{ ?>
<script>
alert("No hay ningún empleado seleccionado para borrar el horario");

</script>
<?php }

}
}
//para cambiar las fechas
include("../comun.php");
$cadena="";
if($parteconsu==NULL){
/*$finicio=cambiaf_a_normal($finicio);
$ffin=cambiaf_a_normal($ffin);*/
if (($apellido1 ==null)and($apellido2 ==null)and($nombre ==null)and($empresa ==null)and($oficio ==null)and($maquina ==null)
and($finicio ==null)and($ffin ==null)and($horainicio==null)and($horafin ==null)and($lunes ==null)and($martes ==null)
and($miercoles ==null)and($jueves ==null)and($viernes==null)and ($sabado==null)and($domingo ==null)){
?>
<script language="JavaScript">
alert("ATENCION: INTRODUZCA ALGUN DATO PARA REALIZAR LA CONSULTA");
document.location.href='consultahorarios.php';
</script>
<?
}

$consulta="SELECT DISTINCT horarios.id_horario,horarios.id_empleado,horarios. id_oficio,horarios.id_maquina,
horarios.id_cliente,horarios.f_inicio,horarios.f_f in,horarios.h_inicio,
horarios.h_fin,horarios.DL,horarios.DM,
horarios.DX,horarios.DJ,horarios.DV,horarios.DS,ho rarios.DD,
horarios.observaciones,
empleados.apellido1,empleados.apellido2,empleados. nombre,empleados.activo,
clientes.nom_empresa,maquinaria.tipo,oficios.nombr e
FROM ((((horarios
LEFT JOIN empleados ON horarios.id_empleado=empleados.id_empleado)
LEFT JOIN clientes ON horarios.id_cliente=clientes.id_cliente)
LEFT JOIN oficios ON horarios.id_oficio=oficios.id_oficio)
LEFT JOIN maquinaria ON horarios.id_maquina=maquinaria.id_maquina) WHERE ((empleados.activo='S') or (empleados.activo='N')) ";


if( $apellido1 !=null){
$consulta=$consulta . " AND empleados.apellido1 like'%$apellido1%'";
$cadena=$cadena . "/empleados.apellido1= $apellido1/";
}

if( $apellido2 !=null){
$consulta=$consulta . " AND empleados.apellido2 like'%$apellido2%'";
$cadena=$cadena . " /empleados.apellido2= $apellido2/ ";
}
if( $nombre !=null){
$consulta=$consulta . " AND empleados.nombre like'%$nombre%'";
$cadena=$cadena . "/empleados.nombre= $nombre/";
}

if( $empresa !=null){
$consulta=$consulta . " AND clientes.nom_empresa like'%$empresa%'";
$cadena=$cadena . " /clientes.nom_empresa= $empresa/ ";
}
if( $oficio !=null){
$consulta=$consulta . " AND oficios.nombre like'%$oficio%'";
$cadena=$cadena . " /oficios.nombre= $oficio/ ";
}
if( $maquina !=null){
$consulta=$consulta . " AND maquinaria.tipo like'%$maquina%'";
$cadena=$cadena . " /maquinaris.tipo= $maquina/ ";
}
if( $finicio !=null){
$consulta=$consulta . " AND horarios.f_inicio like'%$finicio%'";
$cadena=$cadena . " /horarios.f_inicio= $finicio/ ";
}
if( $ffin !=null){
$consulta=$consulta . " AND horarios.f_fin like'%$ffin%'";
$cadena=$cadena . " /horarios.f_fin= $ffin/ ";
}
if( $horainicio!=null){
$consulta=$consulta . " AND h_inicio like'$horainicio'";
$cadena=$cadena . " /h_inicio= $horainicio/ ";
}
if( $horafin !=null){
$consulta=$consulta . " AND horarios.h_fin like'%$horafin%'";
$cadena=$cadena . " /horarios.h_fin= $horafin/ ";
}
if( $lunes !=null){
$consulta=$consulta . " AND horarios.DL like'$lunes'";
$cadena=$cadena . " /horarios.DL= $lunes/ ";
}
if( $martes !=null){
$consulta=$consulta . " AND horarios.DM like'$martes'";
$cadena=$cadena . " /horarios.DM= $martes/ ";
}
if( $miercoles !=null){
$consulta=$consulta . " AND horarios.DX like'%$miercoles%'";
$cadena=$cadena . " /horarios.DX= $miercoles/ ";
}
if( $jueves !=null){
$consulta=$consulta . " AND horarios.DJ like'$jueves'";
$cadena=$cadena . " /horarios.DJ= $jueves/ ";
}
if( $viernes !=null){
$consulta=$consulta . " AND horarios.DV like'$viernes'";
$cadena=$cadena . " /horarios.DV= $viernes ";
}
if( $sabado !=null){
$consulta=$consulta . " AND horarios.DS like'$sabado'";
$cadena=$cadena . " /horarios.DS= $sabado/ ";
}
if( $domingo !=null){
$consulta=$consulta . " AND horarios.DD like'$domingo'";
$cadena=$cadena . " /horarios.DD= $domingo´/ ";
}


?>


<?
$parteconsu=$consulta;
}// fin si no hay consulta

else { // viene de la columna ordenar

$parteconsu=$_POST['parteconsu'];
$parteconsu=str_replace("\\'","'",$parteconsu);

$consulta=$parteconsu;

}

// ordena el resultado según pulse

$ordena=$_POST['ordena'];

switch ($ordena) {
case 5:
$consulta=$consulta."ORDER BY horarios.f_inicio";
break;
case 6:
$consulta=$consulta."ORDER BY horarios.f_fin";
break;
case 7:
$consulta=$consulta."ORDER BY horarios.h_inicio";
break;
case 8:
$consulta=$consulta."ORDER BY horarios.h_fin";
break;
case 17://apellido1,apellido2,nombre
$consulta=$consulta ." ORDER BY empleados.apellido1,empleados.apellido2,empleados. nombre";
break;
case 9://lunes
$consulta=$consulta ." ORDER BY horarios.DL DESC";
break;
case 10://martes
$consulta=$consulta ." ORDER BY horarios.DM DESC";
break;
case 11;//miercoles
$consulta=$consulta ." ORDER BY horarios.DX DESC";
break;
case 12: //jueves
$consulta=$consulta ." ORDER BY horarios.DJ DESC";
break;
case 13://viernes
$consulta=$consulta ." ORDER BY horarios.DV DESC";
break;
case 14://sabado
$consulta=$consulta ." ORDER BY horarios.DS DESC";
break;
case 15://domingo
$consulta=$consulta ." ORDER BY horarios.DD DESC";
break;
case 1://nass
$consulta=$consulta ." ORDER BY empleados.nass";
break;
case 12:
$consulta=$consulta ." ORDER BY empleados.activo";
break;
case 17:
$consulta=$consulta ." ORDER BY empleados.t_movil";
break;
}//final del case ordena
  #4 (permalink)  
Antiguo 27/08/2008, 10:33
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 8 meses
Puntos: 105
Respuesta: Borrar asignación

Cita:
Iniciado por mnv_19 Ver Mensaje
Hola, os cuento mi duda. Tengo una aplicación de gestión de una empresa, en el que tengo una asignación de horarios para empleados,maquinas y clientes. La asignacion me la hace correctamente. ahora viene el problema, al irme a desasginar el horario para dicho empleado, realizo una consutla con todos los campos, en base a esa cosnulta muestro una lista, que lo he echo con un formulario, y dentor de este he puesto un botón "checkbox" de borrado, pero al intentar activar la casilla para poder darle al boton de eliminar la asignacióin, me manda a otra pagina, entonces la pregunta es:

¿Que debo poner en el action del formulario para que me pueda activar esa casilla?

Gracias, un saludo
Haber para comenzar, un checkbox no envia o acciona el formulario, seguro esta mal declarado, y si entodo caso, esta bien y lo manda, ps prueba lo siguiente:

Código HTML:
<script>
function enviar(){
	document.form1.action="pagina.php";
	document.form1.submit();
}
</script>
<form id="form1" name="form1" method="post">
  <p>contenido.....</p>
  <p>borrar
    <input type="checkbox" name="checkbox" value="checkbox" />
  </p>
  <p>
    <input type="submit" name="Submit2" value="Otros Botones">
</p>
  <p>
    <input type="button" name="Submit" value="Enviar" onClick="enviar()" />
  </p>
</form> 
y asi, si hubieran varios submit, no harian nada, o si hay cruses, no pongas submit, y ponles de tipo "button" y dales un evento onClick, asi como esta ayi, y entonces, cuando recien le den click al boton, va a enviarlo a la pagina correspondiente.......

Me respondes si...

Atte.

MasterOjitos
  #5 (permalink)  
Antiguo 27/08/2008, 10:34
 
Fecha de Ingreso: septiembre-2007
Mensajes: 101
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Borrar asignación

SEGUNDA PARTE

include("../conexion.php"); //conectamos para guardar el resultado de la consulta
$link=Conectarse();

$resultConsulta= mysql_query($consulta,$link);


$filas= @mysql_num_rows($resultConsulta);

if ($filas != 0) { // devuelve resultado la consulta ?>
<style type="text/css">
<!--
.Estilo1 {font-weight: bold}
.Estilo2 {color: #ffffcc}
body {
background-color: #ffffcc;
}
.Estilo3 {font-weight: bold; color: #ffffcc; }
.Estilo6 {font-size: 10px}
.Estilo8 {font-size: 10px; color: #592d00; }
.Estilo9 {font-weight: bold; color: #ffffcc; font-size: 12px; }
.Estilo10 {font-size: 12px}
-->
</style>




<form name="form3" method="post" >
<input name="id_horario" id="id_horario" type="hidden" value="">
<input name="id_empleado" id="id_empleado" type="hidden" value="">


<input id="ordena" name="ordena" type="hidden" value="0" />
<input id="parteconsu" name="parteconsu" type="hidden" value="<?echo $parteconsu?>" />
<style type="text/css">
<!--
.Estilo1 {color: #ffffcc}
.Estilo3 {color: #ffffcc; font-weight: bold; }
.Estilo4 {color: #592d00}
-->
</style>
</form>


<form name="form1" method="post" action="listahorarios.php">
<input id="parteconsu" name="parteconsu" type="hidden" value="<?echo $parteconsu?>">

<title>LISTA HORARIOS</title>
<style type="text/css">
<!--
.Estilo1 {color: #ffffcc}
.Estilo3 {color: #ffffcc; font-weight: bold; }
.Estilo4 {color: #592d00}
-->
</style>
<input id="ordena" name="ordena" type="hidden" value="0">
<div id="candidatos" style="position:absolute; left:9px; top:47px; width:772px; height:143px; z-index:5; visibility: visible;" class="Texto" >

<table width="768" border="1" class="capsubmenu">

<tr bgcolor="#9BB3C9">
<td colspan="2" bgcolor="#592d00" class="Estilo1" style="cursor:pointer" onClick="document.form1.ordena.value =17; form1.submit()"><div align="center" class="Estilo2 Estilo3 Estilo10"><strong><strong>Empleado<img src="../imagenes/orden.gif" width="24" height="18"></strong></strong></div></td>
<td width="68" valign="middle" bgcolor="#592d00" class="Estilo1" style="cursor:pointer" onClick="document.form1.ordena.value =5; form1.submit()"><div align="center" class="Estilo2 Estilo3 Estilo10"><strong><strong>F.inicio <img src="../imagenes/orden.gif" width="24" height="18"></strong></strong></div></td>
<td width="63" valign="middle" bgcolor="#592d00" class="Estilo1" style="cursor:pointer" onClick="document.form1.ordena.value =6; form1.submit()"><div align="center" class="Estilo2 Estilo3 Estilo10"><strong><strong>F.fin <img src="../imagenes/orden.gif" width="24" height="18"></strong></strong></div></td>
<td width="51" valign="middle" bgcolor="#592d00" class="Estilo3" style="cursor:pointer" onClick="document.form1.ordena.value =7; form1.submit()"><div align="center" class="Estilo10">H.inicio </div></td>
<td width="46" valign="middle" bgcolor="#592d00" class="Estilo3" style="cursor:pointer" onClick="document.form1.ordena.value =8; form1.submit()"><div align="center" class="Estilo10">H.fin </div></td>
<th width="34" valign="middle" nowrap="nowrap" bgcolor="#592d00" style="cursor:pointer" class="Estilo3" onClick="document.form1.ordena.value =9; form1.submit()"><div align="center" class="Estilo2 Estilo3 Estilo10"><strong><strong>L <img src="../imagenes/orden.gif" width="24" height="18"></strong></strong></div></th>
<th width="38" valign="middle" nowrap="nowrap" bgcolor="#592d00" style="cursor:pointer" class="Estilo3" onClick="document.form1.ordena.value =10; form1.submit()"><div align="center" class="Estilo2 Estilo3 Estilo10"><strong><strong>M <img src="../imagenes/orden.gif" width="24" height="18"></strong></strong></div></th>
<th width="37" valign="middle" nowrap="nowrap" bgcolor="#592d00" style="cursor:pointer" class="Estilo3" onClick="document.form1.ordena.value =11; form1.submit()"><div align="center" class="Estilo2 Estilo3 Estilo10"><strong><strong>X <img src="../imagenes/orden.gif" width="24" height="18"></strong></strong></div></th>
<th width="35" valign="middle" nowrap="nowrap" bgcolor="#592d00" style="cursor:pointer" class="Estilo3" onClick="document.form1.ordena.value =12; form1.submit()"><div align="center" class="Estilo2 Estilo3 Estilo10"><strong><strong>J <img src="../imagenes/orden.gif" width="24" height="18"></strong></strong></div></th>
<th width="40" valign="middle" nowrap="nowrap" bgcolor="#592d00" style="cursor:pointer" class="Estilo3" onClick="document.form1.ordena.value =13; form1.submit()"><div align="center" class="Estilo2 Estilo3 Estilo10"><strong><strong>V <img src="../imagenes/orden.gif" width="24" height="18"></strong></strong></div></th>
<th width="35" valign="middle" nowrap="nowrap" bgcolor="#592d00" style="cursor:pointer" class="Estilo3" onClick="document.form1.ordena.value =14; form1.submit()"><div align="center" class="Estilo2 Estilo3 Estilo10"><strong><strong>S <img src="../imagenes/orden.gif" width="24" height="18"></strong></strong></div></th>
<th width="48" valign="middle" nowrap="nowrap" bgcolor="#592d00" style="cursor:pointer" class="Estilo3" onClick="document.form1.ordena.value =15; form1.submit()"><div align="center" class="Estilo2 Estilo3 Estilo10"><strong><strong>D <img src="../imagenes/orden.gif" width="24" height="18"></strong></strong></div></th>
<th width="55" valign="middle" nowrap="nowrap" bgcolor="#592d00" class="Estilo9" style="cursor:pointer" onClick="document.form1.ordena.value =15; form1.submit()">Borrado</th>
</tr>

<?$sw=0;
$total=0;
$bajas=0;
?>


<?while ($row=mysql_fetch_array($resultConsulta))
{
$total ++;

if($sw==0){?>
<TR class="Estilo8" bgcolor="#DBEEFD" style="cursor:pointer" onClick="document.form3.id_horario.value='<?echo $row[0]?>'; document.form3.submit()" >

<?$sw=0;
}?>


<td colspan="2" background="#ffffcc" bgcolor="#ffffcc">

<span class="Estilo7">
<div align="left"><span class="Estilo6"></a> </span> </div>
<div align="center" class="Estilo8">
<div align="left"><? echo $row["apellido1"]." ". $row["apellido2"]." ". $row[19] ?></div>
</div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center" class="Estilo8"><? echo cambiaf_a_normal($row["f_inicio"]) ?></div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center" class="Estilo8"><? echo cambiaf_a_normal($row["f_fin"]) ?></div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center" class="Estilo8"><? echo $row["h_inicio"] ?></div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center" class="Estilo8"><? echo $row["h_fin"] ?></div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center" class="Estilo8"><? echo $row["DL"] ?></div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center" class="Estilo8"><? echo $row["DM"] ?></div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center" class="Estilo8"><? echo $row["DX"] ?></div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center" class="Estilo8"><? echo $row["DJ"] ?></div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center" class="Estilo8"><? echo $row["DV"] ?></div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center" class="Estilo8"><? echo $row["DS"] ?></div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center" class="Estilo8"><? echo $row["DD"] ?></div></td>
<td background="#ffffcc" bgcolor="#ffffcc"><div align="center">
<input name="borrado" type="checkbox" id="borrado" value="S" />
</div></td>
</TR>

<?}?>


<TR>
<TD colspan="14"><p class="Estilo6">&nbsp;</p>
<div align="center" class="Estilo6"><input name="Volver" type="button" class="boton" id="Volver" onClick="history.back()" value="Nueva Consulta">
<input id="accion" name="accion" type="hidden" value="">

<input id="borra" name="borra" type="hidden" value="">
<button type="button" style="cursor:pointer" name="elimina" title="Elimina el horario del empleado" onclick="document.form1.accion.value='anula';docum ent.form1.id_horario.value='<?echo $id_horario?>';confir_borrado_horario();document.f orm1.submit()"><img src="../imagenes/eliminar.gif" alt="Eliminar horario del empleado" name="eli" id="eli"></button>

</div></TD>
</TR>
</table>
</div>


<?}
else{//************************** NO ENCUENTRA DATOS*********************?>
</form>

<form name="formulariolista" method="post" action="consultahorarios.php">
<script>
alert("NO SE HAN ENCONTRADO HORARIOS.");
</script>

<input name="error" type="hidden" value="<?echo "$error"?>">

<script language="JavaScript">
document.formulariolista.submit();
</script>

</form>
<?}?>
  #6 (permalink)  
Antiguo 27/08/2008, 10:36
 
Fecha de Ingreso: septiembre-2007
Mensajes: 101
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Borrar asignación

Aver yo es que lo que quiero es seleccionar los checkbox que me interesen borrar y luego tengo un boton en la parte de abajo que es eliminar y me borrara lo que yo haya seleccionado, ahi esta el codigo, es que me esoty volviendo un poco loca porque no se como hacerlo,nose donde essta el error! gracias
  #7 (permalink)  
Antiguo 27/08/2008, 10:49
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 8 meses
Puntos: 105
Respuesta: Borrar asignación

Cita:
Iniciado por mnv_19 Ver Mensaje
Aver yo es que lo que quiero es seleccionar los checkbox que me interesen borrar y luego tengo un boton en la parte de abajo que es eliminar y me borrara lo que yo haya seleccionado, ahi esta el codigo, es que me esoty volviendo un poco loca porque no se como hacerlo,nose donde essta el error! gracias
Ayi tienes que hacer checkbox pero en array y dar click los recorres, algo asi:

Haces un Array de checkboxs
Código HTML:
<script>
function enviar(){
	document.form1.action="pagina.php";
	document.form1.submit();
}
</script>
<form id="form1" name="form1" method="post">
  <p>contenido.....</p>
  <p>registro1
    <input type="checkbox" name="eli[1]" value="reg1" />
  </p>
  <p>registro2
    <input type="checkbox" name="eli[2]" value="reg2" />
  </p>
  <p>registro3
    <input type="checkbox" name="eli[3]" value="reg3" />
  </p>
  <p>
    <input type="submit" name="Submit2" value="Otros Botones">
</p>
  <p>
    <input type="button" name="Submit" value="Enviar" onClick="enviar()" />
  </p>
</form> 
Claro que seria mas eficiente si fuera con un bucle y no manual.....

Y al recibirlos en la otra pagina, lo siguiente:
Pagina.php
Código PHP:
$eli=$_REQUEST[eli];
foreach(
$eli as $v => $k){
    echo 
$k."<br>";//ejemplo para ver los registros....
        //$v es el indice, y $k el valor que le diste a los checkbox anteriores
        //aca hiria tu codigo para eliminar los registros con el codigo $k

Atte.

MasterOjitos
  #8 (permalink)  
Antiguo 27/08/2008, 11:23
 
Fecha de Ingreso: septiembre-2007
Mensajes: 101
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Borrar asignación

Gracias...lo probare esta noche, con un pokito de tiempo y paciencia... te cuento.
  #9 (permalink)  
Antiguo 28/08/2008, 03:42
 
Fecha de Ingreso: septiembre-2007
Mensajes: 101
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Borrar asignación

Pero si no se el numero exacto de candidatos que me va a dar la lista, como voy a hacerlo manual???
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 11:18.