elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 [16] 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 ... 434
151  Foros Generales / Noticias / Re: China comienza el desarrollo del 6G y Europa, ¿qué hace Europa? en: 9 Noviembre 2019, 02:20
En chile ni si quiera ha llegado el 4g, solo tenemos 4g-lte que es un 3g un poco mas rápido.
152  Foros Generales / Foro Libre / Re: 60 dias en la calle y descubrió que la vida podía ser mucho más lucrativa. en: 6 Noviembre 2019, 16:32
No siempre es así, si es verdad que en muchos casos los vagabundos tienen un techo en distintas fundaciones que se los dan sin costo alguno pero también cuentan el abuso que sufren dentro de esas instituciones y como les roban, por eso la mayoría prefieren dormir en la calle, lo he sabido de la misma gente que me cuenta que ha pasado por esas cosas.

Sea como sea, si, es verdad, hay gente aprovechada, pero hay otros que no lo son y a pesar de todo necesitan ayuda. Es injusto que por culpa de gente aprovechada se les deje de apoyar a las personas que realmente lo necesitan, por eso no creo que sea una buena opción simplemente dejar de apoyar a esa gente.

saludos.
153  Sistemas Operativos / GNU/Linux / Re: No puedo acceder a wp-admin desde WAN haciendo NAT? en: 6 Noviembre 2019, 15:00
Dos cosas:

Primero, eso pasó porque instalaste wordpress usando tu ip local en ves de la externa, Wordpress no es friendly al momento de migrar de un dominio a otro, debes modificar muchas cosas incluyendo configuraciones en la base de datos, temas, serializaciones, etc, es un verdadero parto. Si tu wordpress está recien instalado entonces te recomiendo que lo elimines y lo vuelvas a instalar pero usando el dominio externo.

Por otro lado tienes un problema con el servername del host virtual del apache:

Código:
ServerName wordpress

El ServerName en el virtualhost indica el dominio que se usará para acceder al sitio web, o sea, el apache tomará de tu cabecera http el host que quieres acceder y si existe ese host en tu host virtual entonces lo utilizará. Talves en tu caso lo usaste como traducción a tu host local.

Debes dejarlo masomenos así:

Código:
ServerName losheredia.ddns.net

Y la próxima ves debes acostumbrarte a crear archivos específicos para host virtuales específicos, no es buena idea usar el 000 default para rutear tus sitios personales sino cuando alguien acceda por ip a tu servidor el apache no śabrá como reaciconar y mostrará tu wordpress y causará fallas en las urls o podría incluso abrir problemas de seguridad.

Saludos.
154  Programación / Java / Re: bean error en: 6 Noviembre 2019, 14:33
No estás usando JPA?, supongo que usas spring por tus otros temas creados. Spring Boot + JPA utiliza repositorios y entidades para acceder y manejar datos, por ejemplo donde listas usuarios se ve que los obtienes de manera directa, o sea si tienes 300 mil usuarios tendrás un array en memoria de 300 mil objetos. Los repositorios de Spring ya tienen clases y anotaciones predefinidas para obtener resultados paginados y obtener de manera automática cada registro por campo.

Mira, dale un vistazo por acá: https://spring.io/guides/gs/accessing-data-jpa/

De todas maneras, si quieres continuar como lo estás haciendo es porque probablemente no existe una condicional a modo de contexto que indique sobre que registro de la base de datos estás trabajando, o sea, talves no tienes un id definido como objeto que sepa spring que es el identificador más que sólo un simple número en un campo, de esa manera por debajo le debiera agregar la sentencia where. Asi que pienso que si no está creando sino sobreescribiendo es porque no existe el where cuando hace las actualizaciones y talves no existe porque tu app no es capaz de manejar identificadores por registros.

Para estar más seguro habría que ver el resto del proyecto y tu base de datos, si tienes un git sería bueno que lo compartas para ir viendo que puede estar pasando.

Saludos.
155  Comunicaciones / Dispositivos Móviles (PDA's, Smartphones, Tablets) / Re: Secuestran mis hijos y requiero pruebas para recuperarlos en: 3 Noviembre 2019, 05:41
De hecho a ti te pueden demandar facilmente por instalar un troyano en el movil de otra persona sin su consentimiento invadiendo su privacidad, independientemente de que si ella haya hecho algo malo o no. El hacking en el sentido de la intrusión a sombrero negro jamás ha sido una solución para problemas legales.
156  Programación / Desarrollo Web / Re: (Pregunta): Como hacer que una $_SESSION determinada dure 2 horas. en: 3 Noviembre 2019, 05:32
Citar
¿Como podría entonces hacer de dicha session un array?

Aver, creo que debes estudiar un poco más de php.

$_SESSION ya es un array y puedes escribir todas las llaves y valores que quieras de manera implícita:

Código
  1. $_SESSION['abc'] = 'def';

O de manera explícita:

Código
  1. $_SESSION = array('abc' => 'def');

Entonces, dentro de tu array de sesion multidimensional puedes poner todo lo que desees incluyendo un valor de tiempo que puedes ponerlo donde tu quieras y luego haces la comparación y haces un session_destroy(). Por ejemplo:

Código
  1.  
  2. if(!isset($_SESSION['data']))
  3. {
  4.    // Inicia la sesión
  5.    $_SESSION = array(
  6.        'data' => array(
  7.            'usuario' => array(
  8.                'id'     => 1,
  9.                'nombre' => 'Demo'
  10.            ),
  11.            'permisos' => array(
  12.            )
  13.        ),
  14.        'time' => time()
  15.    );
  16. }
  17.  
  18. if((time() - $_SESSION['time']) > 7200)
  19. {
  20.    // Sesión expirada
  21.  
  22.    // Elimina la sesión
  23.  
  24.    // Redirecciona al mismo script para renovar la sesión
  25.    header('Location: /index.php');
  26.  
  27.    // Finaliza el script (previene el escape de información)
  28.    exit;
  29. }
157  Programación / Desarrollo Web / Re: (Pregunta): Como hacer que una $_SESSION determinada dure 2 horas. en: 3 Noviembre 2019, 01:57
El time va dentro del a session, puedes agregarle todas las variables que quieras, la sesion es simplemente un array llegar y llenar.

https://www.php.net/manual/es/book.session.php#90351
158  Foros Generales / Noticias / Re: EEUU anuncia que dejará de usar drones fabricados en China en: 2 Noviembre 2019, 18:00
Talves descubrieron algo que no pueden decir a público.
159  Foros Generales / Dudas Generales / Re: ¿Dónde alojar Imágenes? en: 2 Noviembre 2019, 17:58
Yo también uso https://es.imgbb.com/ , antes usaba flickr pero da problemas al postear imagenes antiguas.

Saludos.
160  Programación / Bases de Datos / Re: Ayuda bbdd en: 2 Noviembre 2019, 17:43
Hola, te sugiero lo siguiente (esto está en postgres 10):

Código
  1. CREATE EXTENSION IF NOT EXISTS "uuid-ossp"; -- as postgres user
  2.  
  3. CREATE TABLE teachers (
  4.    id bigserial NOT NULL PRIMARY KEY,
  5.    identifier uuid NOT NULL DEFAULT uuid_generate_v4(),
  6.    name CHARACTER VARYING(32) NOT NULL,
  7.    last_name CHARACTER VARYING(32) NOT NULL,
  8.    attention TIME NOT NULL
  9. );
  10.  
  11. CREATE TABLE courses(
  12.    id bigserial NOT NULL PRIMARY KEY,
  13.    identifier uuid NOT NULL DEFAULT uuid_generate_v4(),
  14.    name CHARACTER VARYING(32) NOT NULL,
  15.    duration TIME NOT NULL,
  16.    teacher_id BIGINT NOT NULL REFERENCES public.teachers(id) ON DELETE CASCADE ON UPDATE CASCADE
  17. );

Primero, no necesitas indicar el id del curso en la tabla del profesor, si llevas esto a la práctica no podrás crear la tabla profesores porque la tabla de cursos aun no existe y de todas maneras tampoco podrías ingresar un registro de profesor porque no existe el registro de curso y al reves, no puedes crear un curso porque no existe el profesor.

Segundo, debes declarar tus columnas si podrán estar nulos o no, esto es importante para mantener la integridad de la tabla.

Tercero, he agregado un identificador uuid para evitar exponer los id del lado del usuario y enumerar items, esto se considera una vulnerabilidad.

Cuarto, he utilizado bigint como id primario para aumentar la cantidad de registros soportados, esto añade escalabilidad a tu proyecto.

Quinto, he traducido las columnas y tablas al inglés, esto es una buena práctica, que tu sitio funcione con textos en español no quiere decir que el código deba estar en español, esto también ayuda en la escalabilidad del proyecto cuando necesites contratar a mas desarrolladores fuera de tu pais cuando el proyecto crezca.

Notas: Si te fijas, he mantenido el id separado del identificador, una opción hubiera sido utilizar únicamente el uuid como llave primaria pero esto aumentaría el coste de carga de la base de datos, por eso debes usar el id de manera interna para tus joins y el identificador para manipular desde tu front-end. La opción de cascada al eliminar se la puse para mantener la integridad de los datos, así si borran el profesor sus cursos también se eliminan ya que hemos declarado ese campo como no nulo, si quieres que el curso se mantenga entonces el campo debe ser nullable y la cascada debiera ejecutar un set null:

Código
  1. teacher_id BIGINT NULL REFERENCES public.teachers(id) ON DELETE SET NULL ON UPDATE CASCADE

Si te fijas, esta es una tabla de 1 a muchos, normalmente la tabla de 1 a 1 no debiera existir o no se debiera enseñar, pero en la práctica si es posible hacer esto aunque es un concepto complejo y útil en casos muy específicos, en tu caso no aplica, pero:

Una tabla de 1 a 1 quiere decir que un profesor sólo puede tener un curso y un curso sólo puede tener un profesor, esto en la práctica es imposible pero se puede solucionar de dos maneras: usando una tabla intermedia con dos llaves que les sean imposibles repetir o estableciendo el id del profesor de la tabla cursos como valor único.

Veamos:

Código
  1. teacher_id BIGINT NOT NULL REFERENCES public.teachers(id) UNIQUE ON DELETE CASCADE ON UPDATE CASCADE

De esta manera un profesor no podrá tener más de un curso y un curso no podrá tener más de un profesor, aunque esto es ridículo, pero esto sería de 1 a 1.

Será que tu profesor te ha querido gastar una broma?

Saludos.
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 [16] 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 ... 434
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines