SoloCodigo

Programación Web y Scripting => PHP => Mensaje iniciado por: RadicalEd en Viernes 11 de Enero de 2008, 21:11

Título: Software de Control de Acceso de Personal
Publicado por: RadicalEd en Viernes 11 de Enero de 2008, 21:11
Ya hace rato quería desarrollar esto para la empresa, no es mucho pero se pueden lucir si trabajan en una empresa PYME como yo, lo único que necesitan es: PHP, DB MySQL y un Lector USB omnidireccional  este mola, sirve para tener un control de entradas y salidas de personal.

Se le pueden agregar más funcionalidades, pero me da pere y pues esto era lo único que les quería hacer gratis. :P

Autor: RadicalEd
Título: hola, que bueno que trabajes en eso
Publicado por: maggy110 en Martes 29 de Enero de 2008, 06:25
Me gustaria contactarte, tengo dudas en algunas cosas y creo que tu eres el indicado para resolver mi problema, Dime de donde eres o como te contacto
Título: Contactar
Publicado por: RadicalEd en Martes 29 de Enero de 2008, 13:32
Hazlo por acá por SoloCodigo, soy parte de esta gran comunidad y puedes postear cualquier duda en los foros.

PD. Soy Colombiano
Título: Software CAP
Publicado por: grandzam en Jueves 31 de Enero de 2008, 06:44
Probare el programilla, después te digo como ha ido
Título: hola
Publicado por: cybergatita en Miércoles 6 de Febrero de 2008, 19:14

Que tal chico

Lector USB omnidireccional?.

Me podrias explicar como es el lector? lee algun codigo de barras?

saludos
Título: cybergatita
Publicado por: RadicalEd en Jueves 7 de Febrero de 2008, 17:48
Los lectores omnidireccionales son como pistolas que capturan códigos de barra por medio de un laser, checa este enlace Google (http://images.google.com.co/images?q=Lector+USB+omnidireccional&ie=UTF-8&oe=utf-8&rls=org.mozilla:es-ES:official&client=firefox&um=1&sa=N&tab=wi)
Título: gracias
Publicado por: cybergatita en Viernes 8 de Febrero de 2008, 03:42
ah gracias, ya me queda mas claro, yo pense que eran los lectores de huella digital.

Me interesa detallar mas tu codigo, en estos momentos lo estoy probando, no cuento con el lector. pero para hacer pruebas no lo necesito o si?.
Título: una pregunta
Publicado por: cybergatita en Viernes 8 de Febrero de 2008, 04:03


al abrir el index e ingresar algun numero cualquiera, me manda esto en mi URL

/localhost/scap/%3C?%20$_SERVER['PHP_SELF']%20?>

Me faltara algo?
Título: Creaste la DB
Publicado por: RadicalEd en Viernes 8 de Febrero de 2008, 13:01
Adjunto a la aplicación hay un script con las tablas que debes manejar para la DB, ya la insertaste al gestor MySQL, además el archivo configuration.php debes ordenar la cadena de conexión según tú DB.
Título: ok
Publicado por: cybergatita en Viernes 8 de Febrero de 2008, 21:55
Asi es ya esta insertada, y en configuration.php le puse el mismo nombre a la BD.
y me manda lo mismo al darle click en guardar abajo en el reloj
Título: Imagen
Publicado por: RadicalEd en Sábado 9 de Febrero de 2008, 14:02
Guarda una imagen en imageshack.us y ponla para ver.
Título: ya son dos las que puse
Publicado por: cybergatita en Sábado 9 de Febrero de 2008, 18:28
<a href="http://img178.imageshack.us/my.php?image=ejemplo1bh0.jpg" target="_blank"><img src="http://img178.imageshack.us/img178/576/ejemplo1bh0.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a>

<a href="http://img519.imageshack.us/my.php?image=ejemplo2pz6.jpg" target="_blank"><img src="http://img519.imageshack.us/img519/5705/ejemplo2pz6.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a>

Subi estas dos, al darle click es lo que me aparece.

saludos
Título: Pasar
Publicado por: RadicalEd en Lunes 11 de Febrero de 2008, 13:31
Pasa el código que está al final a un nuevo archivo.php y en el action del formulario en vez del $_SERVER['PHP_SELF'] colocar miarchivo.php
Título: disculpa
Publicado por: cybergatita en Lunes 11 de Febrero de 2008, 18:15


¿Cual codigo que esta al final?..
Título: Este
Publicado por: RadicalEd en Lunes 11 de Febrero de 2008, 19:38
<?php
  if($guardar)
  {
    $query_buscar = "SELECT * FROM tbentradas_personal WHERE cedula LIKE '".$cedula."'";
$result_buscar = mysql_query($query_buscar) or die(mysql_error());

if($result_buscar==0)
{
  echo "La consulta no ha arrojado datos";
}

if($row_buscar=mysql_fetch_array($result_buscar))
{
  $id_user = $row_buscar[0];
  $nombre = $row_buscar[1];
  $yavinonota = $row_buscar[4];
  $ulti = $row_buscar[5];
}

if($yavinonota==0)
{
  $query_ingresar = "INSERT INTO tbentradas_bitacora VALUES(NULL, ".$id_user.", '".$hora."', '', '".$fecha."')";
  echo "<div align='center'><h2>".$nombre."</h2>SU ENTRADA SE HA REGISTRADO A LAS ".$hora." GRACIAS</div>";
  $result_ingresar = mysql_query($query_ingresar) or die(mysql_error());
  $ultimo = mysql_insert_id();
  $query_update = "UPDATE tbentradas_personal SET yavinonota=1, ulti=".$ultimo." WHERE id=".$id_user;
  $result_update = mysql_query($query_update) or die(mysql_error());
}
//SI YA INGRESO 'TONS ACTUALIZARLO
else
{
  $query_actualiza = "UPDATE tbentradas_bitacora SET hora_salida='".$hora."' WHERE id_personal=".$id_user."
                      AND fecha LIKE '".$fecha."' AND id=".$ulti;
  echo "<div align='center'><b><h2>".$nombre."</h2></b>SU SALIDA SE HA REGISTRADO A LAS ".$hora." GRACIAS</div>";
  $result_actualiza = mysql_query($query_actualiza) or die(mysql_error());
  $query_update = "UPDATE tbentradas_personal SET yavinonota=0 WHERE id=".$id_user;
  $result_update = mysql_query($query_update) or die(mysql_error());
}
/*else
{
  echo "<div align='center'>USTED YA SE HA REGISTRADO EL DIA DE HOY</div>";
}*/
  }
?>
Título: Gracias
Publicado por: cybergatita en Lunes 11 de Febrero de 2008, 20:27

Y lo quito del index?.
o no importa si lo dejo?
Título: Lo hice
Publicado por: cybergatita en Lunes 11 de Febrero de 2008, 20:41

Deje el codigo en el index e hice lo siguiente

action="<?$_SERVER['PHP_SELF']?>">  
lo deje  asi

action="<?$_SERVER['texto.php']?>">

imagine que tal vez no era asi e hice

action="<?['texto.php']?>">

y me manda el mismo error.






Título: De esta forma
Publicado por: RadicalEd en Lunes 11 de Febrero de 2008, 20:51
action="text.php" y listo, quitalo de la parte inferior
Título: nuevamente
Publicado por: cybergatita en Lunes 11 de Febrero de 2008, 22:25

Esto es mi  index.php
<?php include 'configuration.php'; ?>
<html>
<head>
<title>Indicador de entradas</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<LINK REL="StyleSheet" HREF="style.css" TYPE="text/css">
<script language="JavaScript" src="./reloj.js"></script>
</head>

<body>

<div align="center">
<form name="frmentradas" method="post" action="texto.php"
 <input type="button" name="hora_boton" class="button"><br><br>
 <input type="hidden" name="fecha" value="<? echo $Fecha = date('Y-m-d');?>">
 <input type="hidden" name="hora" size="7" readonly="readonly">
 <input type="text" name="cedula" size="10" maxlength="11">
 <input type="submit" name="guardar" value="guardar">
</form>
</div>
</body>
</html>

esto es mi archivo text.php

<?php
  if($guardar)
  {
    //CUANDO SE PASA POR EL SCANNER SELECCIONAMOS DE LA TABLA LA CEDULA
    $query_buscar = "SELECT * FROM tbentradas_personal WHERE cedula LIKE '".$cedula."'";
    $result_buscar = mysql_query($query_buscar) or die(mysql_error());
   
    if($result_buscar==0)
    {
      echo "La consulta no ha arrojado datos";
    }
   
    if($row_buscar=mysql_fetch_array($result_buscar))
    {
      $id_user = $row_buscar[0];
      $nombre = $row_buscar[1];
      $yavinonota = $row_buscar[4];
      $ulti = $row_buscar[5];
    }
   
    //SI LA VARIABLE yavinonota (YA VINO, NO ESTA) ESTA A 0 ES POR QUE ENTRA POR PRIMERA VEZ A LA EMPRESA
    //SINO MARCA LA HORA DE SALIDA
    if($yavinonota==0)
    {
      $query_ingresar = "INSERT INTO tbentradas_bitacora VALUES(NULL, ".$id_user.", '".$hora."', '', '".$fecha."')";
      echo "<div align='center'><b>".$nombre."</b><br>SU ENTRADA SE HA REGISTRADO A LAS ".$hora." GRACIAS</div>";
      $result_ingresar = mysql_query($query_ingresar) or die(mysql_error());
     
      //TOMAMOS EL ULTIMO REGISTRO INDEXADO Y SE ASIGNA A UNA VARIABLE
      $ultimo = mysql_insert_id();
      $query_update = "UPDATE tbentradas_personal SET yavinonota=1, ulti=".$ultimo." WHERE id=".$id_user;
      $result_update = mysql_query($query_update) or die(mysql_error());
    }
    //SI YA INGRESO 'TONS ACTUALIZARLO
    else
    {
      $query_actualiza = "UPDATE tbentradas_bitacora SET hora_salida='".$hora."' WHERE id_personal=".$id_user."
                          AND fecha LIKE '".$fecha."' AND id=".$ulti;
      echo "<div align='center'><b>".$nombre."</b><br>SU SALIDA SE HA REGISTRADO A LAS ".$hora." GRACIAS</div>";
      $result_actualiza = mysql_query($query_actualiza) or die(mysql_error());
      $query_update = "UPDATE tbentradas_personal SET yavinonota=0 WHERE id=".$id_user;
      $result_update = mysql_query($query_update) or die(mysql_error());
    }
  }
?>


Me hace lo mismo. al dar guardar me manda el mismo error.


Título: etiqueta form sin cerrar
Publicado por: RadicalEd en Lunes 11 de Febrero de 2008, 23:37
La etiqueta form está sin cerrar.
checa
<form name="frmentradas" method="post" action="texto.php"

Debe quedar así
<form name="frmentradas" method="post" action="texto.php">
Título: Sin error
Publicado por: cybergatita en Martes 12 de Febrero de 2008, 02:52

ok ya no me mando el mismo error pero ahora al dar click en guardar me manda a la pagina "texto.php" y no aparece nada.

Ahora segun entiendo el codigo debe mandar el registro algun email y al dar click en guardar me debe dejar en el reloj. cierto?

saldos

http://img132.imageshack.us/my.php?image=blancojz3.jpg
Título: Apache
Publicado por: RadicalEd en Martes 12 de Febrero de 2008, 12:46
Tienes bien configurado el apache, PHP y MySQL, te recomiendo que instales el AppServ 2.5, para el email revisa el archivo mail_html.php, en este podras configurar los datos sobre de email.
Título: instalado
Publicado por: cybergatita en Martes 12 de Febrero de 2008, 23:01

ok tenia otra instalacion pero ya cambie a APPSERV.

Ahora al dar click en guardar me manda un error de conexion de password.
Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\AppServ\www\scap\texto.php on line 6

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\AppServ\www\scap\texto.php on line 6
Access denied for user 'ODBC'@'localhost' (using password: NO)

Título: configuration.php
Publicado por: RadicalEd en Martes 12 de Febrero de 2008, 23:13
Agregale al principio de la línea, después del <php
la cadena de conexión

<php
  include 'configuration.php';
Título: ya casi
Publicado por: cybergatita en Miércoles 13 de Febrero de 2008, 00:59

ok lo hice como me lo indiscaste. ahora solo me manda esto:

SU ENTRADA SE HA REGISTRADO A LAS 17:57:43 GRACIAS
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' '17:57:43', '', '2008-02-12')' at line 1

por otra parte en el archivo
mail_html.php

ahi segun entiendo tu codigo debo poner las direcciones email donde me llegara el registro?

Título: lo verifique
Publicado por: cybergatita en Miércoles 13 de Febrero de 2008, 04:35

Segun yo misma, esta correcto el formato.
Título: Error
Publicado por: RadicalEd en Miércoles 13 de Febrero de 2008, 12:50
Te saco ese error por que no hay registros en la tabla tbentradas_personal, 'tons no puede leer la cédula que es el número que está intentando consultar, por lo de los mails, solo es cambiar los que hay predeterminados en el archivo mail_html.php y listo
Título: ok
Publicado por: cybergatita en Miércoles 13 de Febrero de 2008, 20:53

Entonces debo insertar datos en:
tbentradas_personal en los campos:
id
nombre
cedula
tipo....... a que se refiere con tipo?

y en tabla tbentradas_bitacora estan los campos:

id
id_personal

imagino que id_personal es el id relacionado con la otra base de datos.¿? cierto?

saludos
Título: Registros
Publicado por: RadicalEd en Miércoles 13 de Febrero de 2008, 22:13
Por el campo tipo de tbentradas_personal no te preocupes en este puedes colocar '0', la tabla tbentradas_bitacora se llena automáticamente con el ingreso de los datos por la aplicación.
Título: LISTO
Publicado por: cybergatita en Miércoles 13 de Febrero de 2008, 23:58


Ya quedo la primer prueba, ingrese un registro a tbentradas_personal.

Ahora despues de ingresarlo me sale este comentario:
       Nombre del empleado
SU ENTRADA SE HA REGISTRADO A LAS 16:55:56 GRACIAS

La aplicacion ahi  se queda?  no deberia regresar al reloj?

Título: Claro
Publicado por: RadicalEd en Jueves 14 de Febrero de 2008, 12:41
Como pasaste a un nuevo archivo la parte del php debes hacer un regreso al index.php, hazlo así:
echo "<script languaje='javascript'>parent.location=('./index.php');</script>";
Título: DONDE?
Publicado por: cybergatita en Jueves 14 de Febrero de 2008, 19:48


En mi archivo TEXT.PHP
lo pongo fuera del codigo PHP o dentro?

<?PHP
¿dentro?
?>
Título: Dentro
Publicado por: RadicalEd en Jueves 14 de Febrero de 2008, 19:54
dentro del<?php echo "<script languaje='javascript'>parent.location=('./index.php');</script>"; ?>
Título: bien
Publicado por: cybergatita en Jueves 14 de Febrero de 2008, 20:02

Es dentro ya  lo hice.

Pero al dar click en guardar hace el cambio de pantalla demasiado rapido.

else
    {
      $query_actualiza = "UPDATE tbentradas_bitacora SET hora_salida='".$hora."' WHERE id_personal=".$id_user."
                          AND fecha LIKE '".$fecha."' AND id=".$ulti;
      echo "<div align='center'><b>".$nombre."</b><br>SU SALIDA SE HA REGISTRADO A LAS ".$hora." GRACIAS</div>";
      $result_actualiza = mysql_query($query_actualiza) or die(mysql_error());
      $query_update = "UPDATE tbentradas_personal SET yavinonota=0 WHERE id=".$id_user;
      $result_update = mysql_query($query_update) or die(mysql_error());
    }
  }
  echo "<script languaje='javascript'>parent.location=('./index.php');</script>";

"por cierto no llegan las consultas a los emails"
tendria que deshabilitar algun firewall??

Título: 2 cosas
Publicado por: RadicalEd en Jueves 14 de Febrero de 2008, 20:09
1) Como ya todo mola bien, vuelve a colocar todo lo de texto.php en el index.php y en la cadena action deja:
action="$_SERVER['PHP_SELF']"

2) A mi me funciona lo de los mail, por que mi servidor de correo esta directo y la IP del servidor lo tengo configurado en el php.ini
Título: Correcto
Publicado por: cybergatita en Jueves 14 de Febrero de 2008, 20:54

La primer opcion ya quedo :) gracias.

La segunda no entiendo.
Si yo quiero que esas consultas me lleguen a un correo gratuito (gmail, hotmail, yahoo etc)
no sera posible?

Título: configure
Publicado por: cybergatita en Viernes 15 de Febrero de 2008, 21:44

Configure php.ini
[mail function]
; For Win32 only.
SMTP = nombre de mi servidor
smtp_port = 25


no manda el email
Título: SMTP
Publicado por: RadicalEd en Viernes 15 de Febrero de 2008, 22:01
Prueba con algún SMTP gratuito que te permita enviar mails sin confirmación ni nada por el estilo, esto si ya queda a cosa tuya, en otro caso lo que puedes hacer es en vez de enviar por mail, puedes imprimir esos valores en pantalla y listo.
Título: de acuerdo
Publicado por: cybergatita en Sábado 16 de Febrero de 2008, 00:19

Checare con el SMTP gratuito.


y estare checando lo de imprimir en pantalla también. Que funciones de PHP, me permiten hacer eso?
Título: probando
Publicado por: cybergatita en Sábado 16 de Febrero de 2008, 01:06


Pues no me mola con eso de los emails

No se si me haga falta configurar algo en mail_html.php o en php.ini

Ya tengo un servidor gratuito SMTP y no me llega nada



Título: Respuesta
Publicado por: RadicalEd en Sábado 16 de Febrero de 2008, 13:06
1) Coje la impresión que está enviando al mail y en vez de decirle mande a mail (:P Valga la redundancia) dile que imprima esos datos en pantalla, es solo cuestión de enviar esos datos a pantalla.

2) No sé, ahí si me dejas sin explicaciones, como te digo acá donde lo monté en el php.ini yo coloco directamente el servidor mail de la empresa y me mola bien.
Título: vaya
Publicado por: cybergatita en Domingo 17 de Febrero de 2008, 00:53


Ya esta.

Gracias por tu ayuda
Y buena aplicación, le hare a mi modo y te comento, vale?

saludos
Título: Una pregunta
Publicado por: cybergatita en Martes 26 de Febrero de 2008, 19:06

RadicalEd:

Que servidor SMTP estas usando? el de windows?
Título: SMTP
Publicado por: RadicalEd en Martes 26 de Febrero de 2008, 19:10
No, es un servidor linux que hay en la empresa.
Título: NUEVAMENTE EL CODIGO
Publicado por: victorhugo_cb en Viernes 21 de Marzo de 2008, 18:19
MI FRIEND, ENVIA NUEVAMENTE EL CODIGO CON TODOS LOS CAMBIOS QUE HICISTE POR FAVOR......
Título: Solución a uno de los errores...
Publicado por: JrcsDev en Martes 6 de Mayo de 2008, 20:36
con respecto al error que se trató de corregir quedando un archivo texto.php, yo lo solucioné de la siguiente forma:

cambia el: action="<?$_SERVER['PHP_SELF']?>"

por: action="<?php echo $_SERVER['PHP_SELF']?>"


y tambien: action="<?$_SERVER['texto.php']?>"

por: action="<?php echo $_SERVER['texto.php']?>"

en fin, se trata de colocar siempre "php" en las etiquetas de apertura de código, porque no sabemos si la configuración del servidor permite colocar solo <? ?>... yo uso wamp, y me había dado el mismo error, solo coloqué <?php ?> y así me funcionó... bueno, aun no pruebo lo de la lectora porque no tengo una... pero seguiré revisando el código...
Título: Software de Control de Acceso de Personal
Publicado por: F_Tanori en Martes 17 de Junio de 2008, 22:40
Para que funcione el primer metodo es necesario que este configurada la directiva

short_tags_open=on

en el php ini

Saludos
Título: hola
Publicado por: dajacar en Martes 9 de Septiembre de 2008, 16:58
hola amigo me gustaria poderte contactar  quiero hacere unas preguntas  porfa agregame  dajacar@hotmail.com
Título: Hola
Publicado por: RadicalEd en Martes 9 de Septiembre de 2008, 17:27
dilo por acá!!!
Título: REQUIERO
Publicado por: darwin1979 en Jueves 23 de Octubre de 2008, 18:57
SDFSDFDSF
Título: Probare a ver q tal
Publicado por: emanueltun en Miércoles 19 de Noviembre de 2008, 22:50
Vamos a probar haber q tal
Título: puees...
Publicado por: grandzam en Viernes 6 de Febrero de 2009, 04:05
Hola he visto tu codigo y la verdad... te doy unos consejos evita mezclar el html con el php...
Título: Por qué???
Publicado por: RadicalEd en Viernes 6 de Febrero de 2009, 13:46
Pues para eso se hizó el PHP para embeberlo dentro del HTML.

No entiendo tú analogía
Título: Muy bueno
Publicado por: jhgregorym en Domingo 8 de Febrero de 2009, 18:07
esta muy bueno esta aplicacion
Título: podrias subir el codigo de nuevo
Publicado por: Skim0 en Jueves 27 de Mayo de 2010, 00:22
me interesa bastante que volvais a subir los codigos con las modificacioness ya echas.. mas que nada por que me pierdo. gracias un saludo
Título: Modificaciones
Publicado por: RadicalEd en Jueves 27 de Mayo de 2010, 00:54
Hola de hecho no se le ha hecho ninguna modificación.
Título: no me funciona
Publicado por: Skim0 en Jueves 27 de Mayo de 2010, 23:24
no me funciona...
Título: no he podido usarlo
Publicado por: luisalf en Martes 12 de Octubre de 2010, 06:13
amigo estoy intentando usar el sistemita pero tengo un problemita no tiene como ingresar los uusuario y ya tengo todo instalado pero cuando hago un registro manual no se si lo hago mal pero meto la ci y me no hace nada simplemente no deja registro no se si tiene que ver que esta en servidor web o tiene que ser wap
Título: este es el error que me da
Publicado por: luisalf en Martes 12 de Octubre de 2010, 07:43
Notice: Undefined variable: guardar in C:\\Program Files\\EasyPHP-5.3.3\\www\\texto.php on line 4

tengo el index.php de esta forma


<?php include \'configuration.php\'; ?>
<html>
<head>
<title>Indicador de entradas</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">
<link REL=\"styleSheet\" HREF=\"style.css\" TYPE=\"text/css\">
<script language=\"javascript\" src=\"./reloj.js\"></script>
</head>

<body>

<div align=\"center\">
<form name=\"frmentradas\" method=\"post\" action=\"texto.php\">
 <input type=\"button\" name=\"hora_boton\" class=\"button\"><br><br>
 <input type=\"hidden\" name=\"fecha\" value=\"<? echo $Fecha = date(\'Y-m-d\');?>\">
 <input type=\"hidden\" name=\"hora\" size=\"7\" readonly=\"readonly\">
 <input type=\"text\" name=\"cedula\" size=\"10\" maxlength=\"11\">
 <input type=\"submit\" name=\"guardar\" value=\"guardar\">
</form>
</div>
</body>
</html>


y el texto.php  de esta forma


<?php include \'configuration.php\';

if($guardar)
{
//CUANDO SE PASA POR EL SCANNER SELECCIONAMOS DE LA TABLA LA CEDULA
$query_buscar = \"SELECT * FROM tbentradas_personal WHERE cedula LIKE \'\".$cedula.\"\'\";
$result_buscar = mysql_query($query_buscar) or die(mysql_error());

if($result_buscar==0)
{
echo \"La consulta no ha arrojado datos\";
}

if($row_buscar=mysql_fetch_array($result_buscar))
{
$id_user = $row_buscar[0];
$nombre = $row_buscar[1];
$yavinonota = $row_buscar[4];
$ulti = $row_buscar[5];
}

//SI LA VARIABLE yavinonota (YA VINO NO ESTA) ESTA A 0 ES POR QUE ENTRA POR PRIMERA VEZ A LA EMPRESA
//SINO MARCA LA HORA DE SALIDA
if($yavinonota==0)
{
$query_ingresar = \"INSERT INTO tbentradas_bitacora VALUES(NULL \".$id_user.\" \'\".$hora.\"\' \'\' \'\".$fecha.\"\')\";
echo \"<div align=\'center\'><b>\".$nombre.\"</b><br>SU ENTRADA SE HA REGISTRADO A LAS \".$hora.\" GRACIAS</div>\";
$result_ingresar = mysql_query($query_ingresar) or die(mysql_error());

//TOMAMOS EL ULTIMO REGISTRO INDEXADO Y SE ASIGNA A UNA VARIABLE
$ultimo = mysql_insert_id();
$query_update = \"UPDATE tbentradas_personal SET yavinonota=1 ulti=\".$ultimo.\" WHERE id=\".$id_user;
$result_update = mysql_query($query_update) or die(mysql_error());
}
//SI YA INGRESO \'TONS ACTUALIZARLO
else
{
$query_actualiza = \"UPDATE tbentradas_bitacora SET hora_salida=\'\".$hora.\"\' WHERE id_personal=\".$id_user.\"
AND fecha LIKE \'\".$fecha.\"\' AND id=\".$ulti;
echo \"<div align=\'center\'><b>\".$nombre.\"</b><br>SU SALIDA SE HA REGISTRADO A LAS \".$hora.\" GRACIAS</div>\";
$result_actualiza = mysql_query($query_actualiza) or die(mysql_error());
$query_update = \"UPDATE tbentradas_personal SET yavinonota=0 WHERE id=\".$id_user;
$result_update = mysql_query($query_update) or die(mysql_error());
}
}
?>


donde esta el error ? estoy usando localhost con easyphp
y otra cosa no podran ayudarme con el sistema de ingreso ya que quiero tener un pequeno control en mi entrada y salida y de varias personas
gracias amigos

Título: registro de usuario
Publicado por: amadomora en Miércoles 2 de Febrero de 2011, 21:10
saludos amigo me parece interesante que compartas este programa no soy experto  lo instale y me aparece solo para ingresar la cedula donde registro los usuarios lo hago desde phpmyadmin o como? uso debian  saludos
Título: no guarda en la base de datos
Publicado por: amadomora en Jueves 10 de Febrero de 2011, 15:51
saludos estoy usando la aplicación
la instale en debian  y todo bien me aparece una pantalla para la cedula y la introduzco pero cuando le doy a guardar hace el recorrido del codigo pero no guarda en la base de datos
Título: respuesta
Publicado por: RadicalEd en Jueves 10 de Febrero de 2011, 18:32
@amadomora sí te toca por el gesto de MySQL ya que no le hice un controlador para esa parte. Muestrame qué error te saca
Título: cambio de variable
Publicado por: amadomora en Lunes 14 de Febrero de 2011, 16:24
<form name=\"frmentradas\" method=\"post\" action=\"<? $_SERVER[\'PHP_SELF\'] ?>\">
 <input type=\"button\" name=\"hora_boton\" class=\"button\"><br><br>
 <input type=\"hidden\" name=\"fecha\" value=\"<? echo $Fecha = date(\'Y-m-d\');?>\">
 <input type=\"hidden\" name=\"hora\" size=\"7\" readonly=\"readonly\">
 <input type=\"text\" name=\"cedula\" size=\"10\" maxlength=\"11\">
 <input type=\"submit\" name=\"guardar\" value=\"guardar\">
</form>
</div>
tenia este codigo y me aparecia error en la variable $guardar modifique el codigo y quedo asi:

<div align=\"center\">
<form name=\"frmentradas\" method=\"post\" action=\"acceso.php\">
 <input type=\"button\" name=\"hora_boton\" class=\"button\"><br><br>
 <input type=\"hidden\" name=\"fecha\" value=\"<?php echo $Fecha = date(\'Y-m-d\');?>\">
 <input type=\"hidden\" name=\"hora\" size=\"7\" readonly=\"readonly\">
 <input type=\"text\" name=\"cedula\" size=\"10\" maxlength=\"11\">
 <input type=\"submit\" value=\"guardar\">
</form>
</div>
para q1ue el formulario sea enviado en la cedula y a un archivo llamado acceso.php que tiene lo siguiente:
<?php
include \'configuration.php\';
if($_POST[\'$cedula\']
  {
    //CUANDO SE PASA POR EL SCANNER SELECCIONAMOS DE LA TABLA LA CEDULA
   //$query_buscar = \"SELECT * FROM tbentradas_personal WHERE cedula LIKE\'\".$cedula.\"\'\";
   //$query_buscar = \"SELECT * FROM tbentradas_personal WHERE cedula LIKE \'\".$cedula.\"\'\";
         $query_personal = \"SELECT * FROM tbentradas_personal WHERE cedula=\".$cedula;
   $result_buscar = mysql_query($query_buscar) or die(mysql_error());
   
    if($result_buscar==0)
    {
      echo \"La consulta no ha arrojado datos\";
    }
   
    if($row_buscar=mysql_fetch_array($result_buscar))
    {
      $id_user = $row_buscar[0];
      $nombre = $row_buscar[1];
      $yavinonota = $row_buscar[4];
      $ulti = $row_buscar[5];
    }
   
    //SI LA VARIABLE yavinonota (YA VINO NO ESTA) ESTA A 0 ES POR QUE ENTRA POR PRIMERA VEZ A LA Unellez
    //SINO MARCA LA HORA DE SALIDA
    if($yavinonota==0)

    {
      $query_ingresar = \"INSERT INTO tbentradas_bitacora VALUES(NULL \".$id_user.\" \'\".$hora.\"\' \'\' \'\".$fecha.\"\')\";
      echo \"<div align=\'center\'><b>\".$nombre.\"</b><br>SU ENTRADA SE HA REGISTRADO A LAS \".$hora.\" GRACIAS</div>\";

      $result_ingresar = mysql_query($query_ingresar) or die(mysql_error());
     
      //TOMAMOS EL ULTIMO REGISTRO INDEXADO Y SE ASIGNA A UNA VARIABLE
      $ultimo = mysql_insert_id();
      $query_update = \"UPDATE tbentradas_personal SET yavinonota=1 ulti=\".$ultimo.\" WHERE id=\".$id_user;
      $result_update = mysql_query($query_update) or die(mysql_error());
    }
    //SI YA INGRESO \'TONS ACTUALIZARLO
    else
    {
      
      $query_actualiza = \"UPDATE tbentradas_bitacora SET hora_salida=\'\".$hora.\"\' WHERE id_personal=\".$id_user.\"
                          AND fecha LIKE \'\".$fecha.\"\' AND id=\".$ulti;
      echo \"<div align=\'center\'><b>\".$nombre.\"</b><br>SU SALIDA SE HA REGISTRADO A LAS \".$hora.\" GRACIAS</div>\";
      $result_actualiza = mysql_query($query_actualiza) or die(mysql_error());
      $query_update = \"UPDATE tbentradas_personal SET yavinonota=0 WHERE id=\".$id_user;
      $result_update = mysql_query($query_update) or die(mysql_error());
    }
  }
   echo \"<script languaje=\'javascript\'>parent.location=(\'./index.php\');</script>\";
//echo \"mandando registro\";
?>


pero en la linea del SELECT me arroja error de \";\" por eso esta tres veces saludos gracias de antemano

Título: e error que da
Publicado por: amadomora en Lunes 14 de Febrero de 2011, 16:29
Parse error: syntax error unexpected \';\' in /var/www/scap/acceso.php on line 8
Título: cual es la sintaxis correcta
Publicado por: amadomora en Lunes 14 de Febrero de 2011, 16:36
//$query_buscar = \"SELECT * FROM tbentradas_personal WHERE cedula LIKE\'\".$cedula.\"\'\";
   //$query_buscar = \"SELECT * FROM tbentradas_personal WHERE cedula LIKE \'\".$cedula.\"\'\";
         $query_personal = \"SELECT * FROM tbentradas_personal WHERE cedula=\".$cedula;
Título: error de mysql
Publicado por: amadomora en Miércoles 16 de Febrero de 2011, 21:26
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near \' \'\' \'\' \'\')\' at line  logre corregir el error de sintaxis ahora me sale este saludos
Título: Re:Software de Control de Acceso de Personal
Publicado por: vicpool en Jueves 2 de Febrero de 2012, 21:50
buenas tarde amigo sabes soy novato en php y estoy elaborando un sistema de control de docentes tu código fuente q publicaste me esta ayudando bastante pero sabes tengo un problema cuando ingreso la cédula(contraseña) normal graba en la BD pero si pongo cualquier contraseña igual pasa a la pagina q me dice error q debo hacer para q no pase a una pagina q diga error de conexion si no mas bien q se quede en esa pagina hasta q no ingrese bien la contraseña
gracias
Título: Re:Software de Control de Acceso de Personal
Publicado por: RadicalEd en Viernes 3 de Febrero de 2012, 14:55
Solo valida que si pasan un dato que no está en la DB genere un mensaje de alerta, realmente es sencillo, con la misma respuesta del SELECT lo puedes hacer
Título: Re:Software de Control de Acceso de Personal
Publicado por: vicpool en Viernes 3 de Febrero de 2012, 15:45
Este es el código lo revise pero al poner cualquier clave me pasa a la pagina como si lo registrara obvio que no lo almacena en la bd pero mi idea es que se quede en la misma pantalla que pongo la clave. no se q estoy haciendo mal..

<?php
include 'configuration.php';
   if($guardar)
   {
     $query_buscar = "SELECT * FROM tbentradas_personal WHERE cedula LIKE '".$cedula."'";
$result_buscar = mysql_query($query_buscar) or die(mysql_error());
 
if($result_buscar==0)
{
  echo "LAS CLAVES INGRESADAS SON DISTINTAS";
}
 
if($row_buscar=mysql_fetch_array($result_buscar))
{
  $id_user = $row_buscar[0];
  $nombre = $row_buscar[1];
  $yavinonota = $row_buscar[4];
  $ulti = $row_buscar[5];
}
 
 if($yavinonota==0)
{
  $query_ingresar = "INSERT INTO tbentradas_bitacora VALUES(NULL, ".$id_user.", '".$hora."', '', '".$fecha."')";
  echo "<div align='center'><b>".$nombre."</b><br>SU ENTRADA SE HA REGISTRADO A LAS ".$hora."    GRACIAS</div>";
  $result_ingresar = mysql_query($query_ingresar) or die(mysql_error());
 
  //TOMAMOS EL ULTIMO REGISTRO INDEXADO Y SE ASIGNA A UNA VARIABLE
  $ultimo = mysql_insert_id();
  $query_update = "UPDATE tbentradas_personal SET yavinonota=1, ulti=".$ultimo." WHERE id=".$id_user;
  $result_update = mysql_query($query_update) or die(mysql_error());
}
//SI YA INGRESO 'TONS ACTUALIZARLO
else
{
  $query_actualiza = "UPDATE tbentradas_bitacora SET hora_salida='".$hora."' WHERE id_personal=".$id_user."
                      AND fecha LIKE '".$fecha."' AND id=".$ulti;
  echo "<div align='center'><b>".$nombre."</b><br>SU SALIDA SE HA REGISTRADO A LAS ".$hora." GRACIAS</div>";
  $result_actualiza = mysql_query($query_actualiza) or die(mysql_error());
  $query_update = "UPDATE tbentradas_personal SET yavinonota=0 WHERE id=".$id_user;
  $result_update = mysql_query($query_update) or die(mysql_error());
}
   }
 
?>
<?php
$link = mysql_connect("localhost", "root", "vicpool");
mysql_select_db("clases", $link);
$result = mysql_query("SELECT hora_entrada, hora_salida, fecha FROM tbentradas_bitacora", $link);
echo "<center><table border = '1'> \n";
echo "<tr><td>Hora Entrada</td><td>Hora Salida</td><td>fecha</td></tr> \n";
while ($row = mysql_fetch_row($result)){
       echo "<tr><td>$row[0]</td><td>$row[1]</td><td>$row[2]</td></tr> \n";
      }
      //PERMITE IMPRIMIR EN PANTALLA
echo "</table> \n";
?>
<p> ESPERE POR FAVOR , SERÁ REDIRECCIONADO EN 10 SEGUNDOS.</p>
<a href="<?php echo $logoutAction ?>">Desconectar</a>
</html>
Título: Re:Software de Control de Acceso de Personal
Publicado por: ceor30 en Miércoles 13 de Junio de 2012, 09:13
Alguien me podria ayudar soy nuevo y  no veo de donde descargar el software de control de Acceso de Personañ
Título: Re:Software de Control de Acceso de Personal
Publicado por: RadicalEd en Miércoles 13 de Junio de 2012, 21:04
Alguien me podria ayudar soy nuevo y  no veo de donde descargar el software de control de Acceso de Personañ
Primer mensaje del post (http://solocodigo.com/46761/software-de-control-de-acceso-de-personal/msg121925/#msg121925)
Título: Re:Software de Control de Acceso de Personal
Publicado por: mgss_08 en Domingo 21 de Julio de 2013, 21:07
lo phttp://solocodigo.com/Smileys/solocodigo/ball.gif  :bravo: robare gracias por el aporte
Título: Re:Software de Control de Acceso de Personal
Publicado por: neardark en Miércoles 6 de Noviembre de 2013, 21:40
porque cuando ingreso un numeral cualquiera y doy guardar me lleva a una pagina en blanco con esto :



Forbidden

You don't have permission to access /asistencia/< on this server.



tan solo descargue tu codigo y lo ejecute , no eh movido nada
Título: Re:Software de Control de Acceso de Personal
Publicado por: RadicalEd en Jueves 7 de Noviembre de 2013, 05:25
Si está en un linux prueba los permisos a los directorios, muestra un pantallazo y te colaboro
Título: Re:Software de Control de Acceso de Personal
Publicado por: aesu en Martes 13 de Mayo de 2014, 00:31
Que tal amigo..!
Goolgleando me encontre con este sitio, especificamente en esta sección y me llamó mucho la atención tu script, por lo cual tengo una pregunta que hacerte: ¿Cual es el script que captura en vivo el código del empleado, para colocarlo en la caja de texto??? Esto no lo hace php.. supongo que es con javascript, pero no veo el código.

Te hago la pregunta porque leyendo algunos comentarios vi que hablas de un lector.

Espero tu respuesta, gracias..!

Ya hace rato quería desarrollar esto para la empresa, no es mucho pero se pueden lucir si trabajan en una empresa PYME como yo, lo único que necesitan es: PHP, DB MySQL y un Lector USB omnidireccional  este mola, sirve para tener un control de entradas y salidas de personal.

Se le pueden agregar más funcionalidades, pero me da pere y pues esto era lo único que les quería hacer gratis. :P

Autor: RadicalEd
Título: Re:Software de Control de Acceso de Personal
Publicado por: cperezvas en Jueves 14 de Enero de 2016, 15:16
hola buenos dias me ha parecido interesante este sistema y estoy tratando de montarlo en local pero tengo un inconveniente con  el index me sale error en linea 25 que podra ser.

saludos.