Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - #!drvy

#1591
PHP / Re: SQLi en esta consulta?
25 Marzo 2018, 05:06 AM
Yo generalmente, cuando no uso un ORM (que suelo usar casi todo el rato, y te lo recomiendo), lo que me hago es una función de query.. dicha función acepta mínimo dos parámetros, la query (obligatorio) y un array (opcional). Si el array viene con datos, ejecuto una sentencia preparada, si el array esta vació, hago un "exec".

Aunque realmente, creo que la diferencia entre una sentencia preparada y una directa en cuanto a eficiencia es mínima.

Saludos
#1592
PHP / Re: SQLi en esta consulta?
25 Marzo 2018, 03:20 AM
Si, es vulnerable a SQLi.

Solución: Usa prepared statements.

http://php.net/manual/es/mysqli.quickstart.prepared-statements.php
http://php.net/manual/es/pdo.prepare.php

No uses MD5 para contraseñas.. hoy en día es casi inútil, una GPU decente te puede hacer millones de comparaciones de hash por segundo lo cual lo hace super viable e inseguro a ataques de fuerza bruta.

Usa cifrados con factor de dificultad:

http://php.net/manual/es/function.password-hash.php
http://php.net/manual/es/function.password-verify.php
http://php.net/manual/es/function.crypt.php

Saludos
#1593
Lo único que se me ocurre es ampliar el tiempo entre capturas a un valor seguro.. quizás 500ms podría valer.. pero se pierde precisión :/

Saludos
#1594
PHP / Re: Organizar con eficencia
24 Marzo 2018, 02:13 AM
Hay veces en las que hace falta eficiencia.. y hay otras en las que es mejor que este bien estructurado. En tu caso, estas intentando hacer un overkill de eficiencia... realmente tal y como lo tienes, no supone ninguna perdida de "eficiencia".

Saludos
#1595
Generalmente, un lector de codigos de barra, lo que hace es:

Escanear el código de barra.
Procesar el resultado y obtener su valor (generalmente, numerico).
Mandar una señal al sistema operativo que hace que se inserte como si de un copia-pega se tratase o como si lo escribieras tu a mano...

No veo la complicación. Simplemente añade a una tabla dinámica (javascript) todos los medicamentos que se han ido usando y luego procesalos en PHP.

Por ejemplo:




En verdad, no hace falta abrir un procedimiento para rellenar datos (ya sea automáticamente o no) cada vez que vayas a "utilizar" un medicamento.

CitarSon todas ideas que tengo en la cabeza, quería saber si podrían ser efectivas y si alguno trabajó alguna vez con un lector de códigos de barras.

Realmente no tiene nada de especial. Es como un teclado automatizado.. no hace falta conectar con PHP ni nada.





PD: Créeme, los lectores de barra son mucho más cómodos para estas cosas que cualquier algoritmo de OCR para imágenes de una webcam.


Saludos
#1596
Citar¿tengo que modificar el contenido manualmente modificando los documentos HTML?

Si solo vas a usar esas tecnologías que has mencionado, si.

Citar¿Es posible implementar mi diseño en un CMS como Wordpress?

Si.

CitarHasta ahora, las webs que he hecho las he modificado yo manualmente y estoy seguro de que de alguna forma se tiene que poder gestionar todo de una forma más sencilla una vez realizado el CSS, determinado el header estático...¿alguien me puede informar un poco de ésto?

Lo que buscas es o bien un CMS o bien programarte la funcionalidad dinámica en el backend.

https://es.wikipedia.org/wiki/Script_del_lado_del_servidor

Saludos
#1597
PHP / Re: Subir pagina web y server email
24 Marzo 2018, 01:00 AM
El error te salta porque no tienes un servidor de SMTP (correos) instalado en tu localhost. En un principio, en Hostinger no debería pasarte aunque te tienes que asegurar de que dan cuentas de correo (99.99% de los casos es un si).

Saludos
#1598
Lo hace porque el segundo alert se ejecuta ANTES que el primero. Es bastante sencillo de comprobar: Pones un Date al lado del texto y lo veras.

Código (javascript) [Seleccionar]
alert((new Date) + Array_con_el_archivo);

Recuerda, prácticamente todo en javascript se hace de manera asíncrona, eso quiere decir que una función puede ejecutarse antes que otra hasta que salte un evento. En tu caso, ese evento es onreadystatechange que salta DESPUÉS de cargar el archivo.

Te sugiero que revises algún tutorial sobre funciones asíncronas y callbacks en javascript.

En tu caso, la solución seria hacer que el evento llame a un callback donde puedas procesar el archivo.


Código (javascript) [Seleccionar]
function obtenerArchivo(archivo, callback){
   if(window.XMLHttpRequest){
       var handler = new XMLHttpRequest();
       handler.open('GET', archivo, true);

       handler.onreadystatechange = function(){
           if(handler.readyState === handler.DONE && handler.status === 200){
               callback(handler.responseText);
           }
       };

       handler.send();

       return true;
   }

   return false;
}



Y para procesarlo podrías usar:

Código (javascript) [Seleccionar]
function procesarArchivo(contenido){
   Array_con_el_archivo = contenido.split("\n");
   alert(Array_con_el_archivo);

   return true;
}

obtenerArchivo('archivo.txt', procesarArchivo);


o bien..

Código (javascript) [Seleccionar]
obtenerArchivo('archivo.txt', function(contenido){
   Array_con_el_archivo = contenido.split("\n");
   alert(Array_con_el_archivo);
});



Saludos
#1599
Creo que lo tienes crudo.

Ningún navegador da timestamps seguidos.. algunos incluso se saltan varios ciclos para ahorrar batería.. aparte, tenemos en cuenta que cada operación tarda X tiempo en realizarse (el calculo de timeElapsed pj) y eso añade tiempo perdido.

¿ Para que necesitas el timer exactamente ? Quizás podamos encontrar alguna alternativa.

Saludos
#1600
CitarDe acuerdo a los detalles publicados por The Daily Beast, Guccifer 2.0 se habría olvidado de activar su servicio VPN en una ocasión y, por culpa de este desliz, su dirección IP y su ubicación real quedaron al descubierto a través de los registros de una red social estadounidense no revelada.

A partir de esta información, los investigadores estadounidenses trabajaron en la identificación del ciberatacante hasta identificarlo como un agente del servicio de inteligencia militar ruso que opera desde la sede del Departamento Central de Inteligencia de Rusia, el GRU. Aunque, eso sí, las fuentes de la publicación no revelaron qué oficial en particular trabajaba bajo ese seudónimo.


¿ Por favor... alguien se cree esta bazofia ?

Osease, un "profesional" (en palabras de los propios investigadores), va a trabajar al GRU, usa su ordenador con un estúpido VPN y decide meterse en "una red social estadounidense" sin activarla????? ¿¿¿Que ***** de profesionalidad es esta??? ¿¿¿Que ***** hace en una red estadounidense???

Hasta crepusculo tiene mejor guion que esta *****.

Pura bazofia de aquí ... a Rusia (x2).



Saludos