Ya se resolvio, solo es cambiar el tamaño de caracteres del campo contraseña mínimo a 255 y luego ensayar con un usuario registrado despues de cambiar esto, gracias a los comentarios de todos y al video, excelente.
@JoseManuel-lo2ed3 ай бұрын
Muchas gracias, estaba yo pegándome con esto ya un buen rato hasta que vi este cometario.
@luisalbertopaterno8 жыл бұрын
Hola profesor Juan: gracias por este curso. Ya he descubierto porque no me trabajaba el password_hash. Era que mi servidor estaba ya obsoleto y no reconocía esa función, lo actualicé y ya me trabaja perfecto. Gracias y continúe con el curso.
@pildorasinformaticas8 жыл бұрын
Me alegro de que hayas encontrado el fallo. Gracias por el comentario y un saludo!!
@ElRinconDeJavo8 жыл бұрын
Disculpa por hacer otro comentario más en este vídeo, debo parecer el pelma del pueblo, pero es que me ha surgido un problema con este método ahora que lo quise poner en practica en un ejemplo real: - El método funciona, si el usuario existe y la contraseña coincide, contador++ y hago un header a index.php. - Si el usuario existe pero la contraseña no coincide, hago un header al login.php pasándole un parámetro por GET para que me muestre error. También funciona sin problemas. El problema es cuando el usuario no existe en la base de datos, me deja la página en blanco. Como no me gusta que me den las cosas mascadas antes de nada hice mis pruebas y encontré la solución: La variable contador no debe ser igual a cero, ni tampoco es necesario incrementarla, debe ser $contador = $resultado -> rowCount(); Si contador es => 0 dentro del if meto el while y dentro del while el if (password_verify($user_pass, $db_file['pass'])), que si da true, no hace falta incrementar nada, inicio la sesión, hago un header a index.php y listo; si no coincide (else) entonces me manda a login.php pasando un parámetro por GET para activar un mensaje de error (la contraseña es incorrecta). Hasta aquí bien, ahora para evitar que nos deje la página en blanco si no existe el usuario, añadimos un else al if que revisa si contador es superior a 0, si no lo es, igualmente me vas a redirigir a login.php pasando un parametro por GET para activar otro mensaje de error (el usuario no existe). ¿Que tal? no se si sea perfecto el código, pero poco a poco se va aprendiendo... xD
@pildorasinformaticas8 жыл бұрын
Perfecto !! De esto se trata. Muchos aspectos importantes pueden quedar sin solucionar por mi parte. El que lo seáis capaces de solucionarlos vosotros indica que vais por el "buen camino". Un saludo y gracias por el aporte.
@victoriabarragan28925 жыл бұрын
Super! Felicidades, buen ejercicio.
@cahuanagold4293 Жыл бұрын
Holas, exelente curso del sr. Juan, saludos por ello; por otro lado este ejercicio me resultó esquivo para mi, ya que no pude resolver en varias horas, siempre me daba error, prové cambiando los atributos de la contraseña a varchar(255) como mencionaban en los comentarios, pero al final el error estaba en haber escrito con mayusculas la palabra "PASSWORD", pero en la base de datos lo tenia escrito con minúscula, corregí ese error y solucionado. if(password_verify($password, $registro['password'])){ $contador++; }
@tonytech995 жыл бұрын
como youtube no habilita un me encanta... es el mejor tutorial de login q veo..
@pildorasinformaticas5 жыл бұрын
Gracias por el comentario, me alegro de que te guste. Un saludo!
@nataliatapiasheredia52426 жыл бұрын
gracias por salvar mis semestres mas de una vez, eres el mejor
@pildorasinformaticas6 жыл бұрын
Gracias a ti por seguir mis vídeos. Un saludo!
@miguela.moralesc.94604 жыл бұрын
¡EXCELENTE!, Muchas gracias por compartir tu conocimiento y explicarlo puntualmente. Me ha servido mucho. ¡Felicidades!
@batu018 жыл бұрын
a mi el password_verify me da siempre false, estoy atascado. Ya está!, tenia un VARCHAR(20) y claro el password_verify siempre me daba false, lo e aumentado a 100 y problema arreglado.
@jorgeromeroc8 жыл бұрын
Compañero muchas gracias por comentar la solución, ya me estaba partiendo el mate. jaja vale.
@EstebanQuijadaSuazo8 жыл бұрын
Muchas gracias me ayudo mucho tu solución, saludos......
@brayandeviamachado47098 жыл бұрын
En la pagina oficial de PHP recomiendan que ese campo tenga una longitud de 255 caracteres. :)
@Giancarlort8 жыл бұрын
El algoritmo utilizado y la longitud de la contraseña codificada cambiarán en las próximas versiones de PHP, cuando se añadan algoritmos todavía más seguros. Si guardas las contraseñas en una base de datos, la recomendación es que reserves 255 caracteres para ello y no los 60 que se pueden utilizar actualmente.
@542954308 жыл бұрын
Gracias buen hombre, después de varias horas de revisar las el código y sin consuelo de encontrar el error, me topo con este comentario y problema solucionado.
@albertoprieto5228 жыл бұрын
Mi login lo hice con Dreamweaver 8 y no se como o donde aplicar lo dado aquí en el vídeo en mi código. GRACIAS POR LOS DOS VÍDEOS ME AYUDARON MUCHO
@albertoprieto5228 жыл бұрын
Ya pude resolver modificando el código que crea por defecto Dreamweaver. Si alguien llega a tener el mismo problema puede comunicarse conmigo.
@blackmetal11317 жыл бұрын
Gracias por el vídeo y por compartir conocimientos. En el script login que has añadido a la descripción para descargarnoslo. El elemento no tiene atributos asignados. Login: Te lo comento con humildad por si te interesa saberlo.
@ricardorios745 жыл бұрын
Brillante el curso!!! saludos desde Paraguay
@franconolbertovilchezmore18427 жыл бұрын
Excelente curso, juan eres un docente increíble, entregas todo por enseñarnos a no jalar cursos xD, sabes deberias hacer un curso FRONT END, soy pésimo en eso, usando bootstrap, o cualquier framerwork.... seguro que seria una calidad completa de enseñanza, dios te bendiga saludos, desde Peru!!!
@LeonardoProne11 ай бұрын
Muy buena clase! muchas gracias!
@IzaryRondon8 жыл бұрын
Muchas gracias Juan...el curso está super!!
@pildorasinformaticas8 жыл бұрын
Gracias !! Un saludo
@ferhogan8 жыл бұрын
necesito su ayuda por favor, a todos los usuarios me los marca como usuarios " No registrados" y si los tengo en la bdd, muchas gracias por su atencion
@franconolbertovilchezmore18427 жыл бұрын
para usar, la función password_verify. en el campo de tu base de datos llamado PASSWORD, debes colocarle varchar(255), por que asi nos lo indica PHP, para facilitarte las cosas, hasle un truncate a tu tabla y vuelve a introducir tus usuarios, pero ya con el campo corregido, y luego ingresalos, y ya te apareceran como registrados. pase lo mismo y se solucionó. .Dios te bendiga
@luisinf48598 жыл бұрын
Juan retomando el curso 69 Login con hash, podrías como hacer un control inicio de sesión ??? es decir que el sistema sepa cuando eres usuario administrador y cuando eres un usuario normal ...gracias por tu ayuda .. eres el mejor prof. saludos!
@pildorasinformaticas8 жыл бұрын
Hola !! Está previsto en el curso hacer un control de usuario por perfiles. Espero hacerlo pronto.
@alejandromonzon86598 жыл бұрын
Maravilloso un curso muy completo! :3
@saul33047 жыл бұрын
ami también me daba un problema la función password_verify() pero puse un varchar(255) como los recomida php y los soluciones
@andressierra64762 жыл бұрын
Muchas gracias maestro!!
@CAR4657 жыл бұрын
Buena clase y buen curso, aunque siento que el contador estuvo de mas porq si el password_verify daba false simplemente no estaba registrado el usuario o tuvo error de contraseña, para sistema de login no le encuentro utilidad a la validacion del contador excelente curso super completo
@ulisesgornatti5685 Жыл бұрын
Hace 5 años ... pero bueno. Yo pensaba lo mismo pero probando si poner el contador pasa que da problemas cuando uno pone un usuario que no existe no asi con la contraseña. Por eso es mejor ponerlo, aunque no se si se sigue usando este metodo.
@d-landjs3 жыл бұрын
Excelente tutorial maestro!!
@carlospereiraaliaga35908 жыл бұрын
muchas gracias por la información... muy bien explicado. Creo que hay un problema de seguridad con este código para verificar... ya que verifica si existe el password pero no lo relaciona al usuario. Saludos!
@MiguelRodriguez-iv4ip8 жыл бұрын
Hola, en la consulta sql realiza una peticion con un where, por lo que cuando va al while busca la contraseña del usuario del where, creo que es asi, no lo he probado aún. De todos modos, esperemos que dice el profesor.
@polibooleano38897 жыл бұрын
Muchas gracias hombre! Excelente curso!
@oscararriazaguzman7968 Жыл бұрын
Funciono a la fecha 25/10/2023
@robertolavin88744 жыл бұрын
ALTER TABLE usuarios MODIFY PASSWORD VARCHAR(255) para que entre el hash en la base de datos
@185247118 жыл бұрын
Joder Juan sois un vampiro.
@alejomejia55526 жыл бұрын
Excelente, me funcionó perfecto.
@sahoyos8 жыл бұрын
Hola Juan, antes que nada agradecerte tus tutoriales que me han sido muy utiles e ilustrativos, pero necesito cargar imagenes en mi base sql, lo vamos ha ver o en donde lo veo. Gracias de antemano y de nuevo mucha gracias por tu tiempo. Saludos desde México!!! =)
@pildorasinformaticas8 жыл бұрын
Hola!! Lo veremos en breve. Un saludo!!
@Ninlingue Жыл бұрын
Muchas gracias
@kevinmelendez54058 жыл бұрын
Gracias Juan!
@jtvlajava4 жыл бұрын
gracias bro
4 жыл бұрын
Estas tomando el curso al mismo tiempo que yo
@danielespinosa11108 жыл бұрын
Hola Profesor, estuve leyendo los comentarios para ver que no se repitiera mi post, y pues no, la cuestión es la siguiente: No entendí para que se usa el contador, ya que ese if solo entra cuando coinciden las passwords ingresadas, y no por el nombre de usuarios, la condición que obtiene el nombre del usuario esta en el while. Y pues en todo caso, como mera opinión, pensé en que en vez de incrementar el contador, ahi mismo puedo enviar a la zona de usuarios registrados, ya que en todo caso si hay usuarios con la misma password pues no afectaría, ya que serían usuarios con nombres y contraseñas iguales. Una disculpa si me equivoco en mi análisis. Saludos y gracias por los videos.
@pildorasinformaticas8 жыл бұрын
Hola !! Gracias por el comentario. Como tengo más de 800 vídeos en el canal, a pesar de que este es reciente, necesito que me digáis el minuto y segundo del vídeo donde aparece la instrucción porque no recuerdo el código. Así me evitáis tener que verme de nuevo mi propio vídeo. Un saludo!!
@angelortiz66277 жыл бұрын
hola muchachos os comento el siguiente error, siempre que uno quiere ingresar el login les mandara que esta incorrecto o que no ha sido registrado segun php son 255 caracteres el tamaño de encriptamiento, puesto que nosotros al momento de crear la tabla solo usamos 20 caracteres la solucion seria modificar el tamaño de caracteres del password a 255 ejemplo password varchar (255) y aplicar un truncate a la tabla para que formate los registros desde cero y vuelvas ingresar los registros ya que parecera tedioso pero es la solucion ya que si no la formatean de nada servira el porque es por que no se ingreso la cadena completa de encriptamiento y desde luego aunque le modifiquen nada mas el tamaño de caracters solo sera error... 1- password varchar(255) 2-TRUNCATE USUARIOS_REGISTRADOS o como sea el nombre de la tabla y listo vuelvan a ingresar los datos Funcionara de maravilla
@camilopuentes480610 ай бұрын
Muchas gracias!
@levisunexpo8 жыл бұрын
Buen tutorial.
@pildorasinformaticas8 жыл бұрын
Gracias !! Un saludo
@lavueltaradio8 жыл бұрын
Saludos, Muchas Gracias por este esfuerzo, queria saber si vas a incluir AJAX en este tutorial de php, tambien creo que al publico acojeria con mucho gusto un tutorial de Wordpress para desarrolladores, gracias
@pildorasinformaticas8 жыл бұрын
Pensaba hacer un curso exclusivo de Ajax en el futuro. Hice una introducción a Ajax en mi curso de JavaScript de unos cuantos vídeos... pero tomo nota. También del curso WordPress para desarrolladores. Un saludo!!
@iNVICTUX7 жыл бұрын
Me salvaste! gracias.
@estebangarzon54265 жыл бұрын
¡¡¡Excelente video, como todos!!!!.... Una pregunta Juan, el if del password_verify es para verificar la contraseña que introducimos por pantalla con la que tiene el hash del usuario grabada en la tabla, pero suponte que en la tabla están los dos tipos codificados o no, ahi el password_verify no me valdría para los no codificados, ¿verdad?... Imagino que debería de incluir un if previo con las mismos parámetros de entrada del password_verify y si no son iguales que hiciera el password_verify....
@ing.alexandervarela62006 жыл бұрын
Que tal como esta. Excelente el curso para aprender a programar utilizando php. Tengo una duda referente a este video. En BD tengo registros que no tienen la clave cifrada y otros que si. Porque razón con las claves que no están cifradas me dice usuario no registrado si los datos suministrados son iguales.
@vimerable18 жыл бұрын
gracias por los vídeos, aquí termina el curso o habrán aun mas?
@pildorasinformaticas8 жыл бұрын
Habrá más. Un saludo
@marluanespiritusanto84588 жыл бұрын
Saludos profesor, antes que nada quisiera agradecerle por sus excelentes vídeos que nos han ayudado a aprender a programar. También me gustaría saber si tiene pensando usar un Framework como CodeIgniter para el futuro del curso PHP. Saludos desde Dominicana :)
@pildorasinformaticas8 жыл бұрын
Hola !! Gracias por el comentario. Sí efectivamente tengo pensado hacer cursos relativos a framework en un futuro ya que me lo piden mucho todos los días. El que más me han pedido de momento es Laravel, pero ya veremos por cuál o cuáles me decanto. Un saludo!!
@victorrobles25558 жыл бұрын
Saludos juan, gracias por los vídeos. Me gustaría saber, que dato almacenar en la cookie del login recordar y como hacer segura esa información
@pildorasinformaticas8 жыл бұрын
Hola !! Para saber qué dato almacenar en la cookie del login recordar, puedes ir al vídeo 66 minuto 15:45 para verlo. Respecto a cómo hacer más segura esa información, lo único que yo conozco es ponerle caducidad a la cookie tal y como explico en vídeos anteriores. No conozco forma de encriptar cookies ni nada por el estilo. Las páginas más seguras que te puedas encontrar por ahí como por ejemplo páginas de bancos etc no permiten guardar cookies. Es decir, lo más seguro de todo es impedir el uso de cookies. Para eso está precisamente la opción de recordar en un login. Si estás en un ordenador que no es tuyo, no actives esa casilla y la cookie no se guardará. Si estás en tu ordenador, entonces puedes activar la casilla y la cookie se guardara en tu ordenador. Tal vez exista forma de securizar la información de una cookie, pero yo lo desconozco. Un saludo!!
@victorrobles25558 жыл бұрын
Muchas gracias por responder, me ha servido
@kevinmelendez54058 жыл бұрын
Juan, vamos a ver Ajax por aca? Lo que se de Ajax lo aprendi de tu tutorial de JavaScript
@pildorasinformaticas8 жыл бұрын
Hola!! No era mi intención, aunque como ya me lo habéis comentado varios, me plantearé ver algo al respecto en este curso. Un saludo!!
@agusm.14108 жыл бұрын
Buenas tardes Juan, como siempre magnífico video. Tengo una duda y es como hacer para que valide igualmente claves cifradas y no cifradas. En el ejemplo que sigues tienes dos claves cifradas y el contador sube cuando logueas esos usuarios, pero si pruebas logueando los usuarios de claves no cifradas el contador no sube, se salta el if(password_verify($password, $registro['PASSWORD'), por lo que siempre sale el mensaje de usuario no registrado aún estando en la BBDD. Igual no es importante porque se supone que debes tener todas las claves cifradas, por lo que si la respuesta te roba más de 1 minuto ni te molestes ;).
@pildorasinformaticas8 жыл бұрын
jajajaja no te preocupes aunque me robe más de un minuto. Dentro de ese if podrías evaluar más de una condición utilizando un "o" condicional, de tal forma que podrías evaluar el password cifrado y sin cifrar. Pero como bien dices, yo hasta el día de hoy no he visto nunca una BBDD en las que las claves estén cifradas en algunos registros y en otros estén sin cifrar. Un saludo!!
@agusm.14108 жыл бұрын
Cierto, que torpe soy, ejemplo claro de que debemos usar más la cabeza, añadiendo un condicional al if se resuelve. if(password_verify($pass, $registro['PASSWORD']) || $pass == $registro['PASSWORD']) Muchas gracias :)
@brayandeviamachado47098 жыл бұрын
Juan disculpa, quisiera saber si harás más adelante introducción a las fechas, yo por ejemplo estoy intentado pasar las fechas a español y hacer un sistema de pedido con 3 días de anticipación pero me lio mucho. jeje
@pildorasinformaticas8 жыл бұрын
Hola !! Intentaré jugar con fechas en los próximos vídeos. A ver si no se me olvida ya que me hacéis muchas sugerencias y peticiones. Un saludo!!
@sahoyos8 жыл бұрын
Pues gracias, aunque lo estoy investigando por mi cuenta, pero como decimos por aca; estoy hecho bolas !!! =P... Saludos
@armandocat64028 жыл бұрын
Saludos, excelentes videos, sera que me despejas de una inquietud; estoy un poco desorientado escucho hablar mucho de los framework para php, y el dreamweaver es un framework??
@ElRinconDeJavo8 жыл бұрын
Dreamweaver no es un Framework PHP, es un editor de código y tienes otros a tu disposición como Adobe Brakects que es de los mismos creadores, con la diferencia que es Open Source y gratuito, pero quizás orientado a personas con más conocimientos en programación escrita ya que Adobe Dreamweaver ofrece muchas ayudas visuales. Un Framework es un espacio de trabajo prediseñado, por así decirlo de forma simple, unos cimientos sobre los que trabajar, por ejemplo un Framework PHP puede ofrecer determinadas clases para ayudarnos a realizar tareas comunes así como una estructura de carpetas y archivos para ahorrarnos el trabajo de estructurarlo por nuestra cuenta, pero también existen Frameworks CSS como Bootstrap, de Javascript como Angular... es un tema comentado porque actualmente es común el uso de Frameworks para estandarizar el trabajo, pero de la misma forma que para trabajar en Bootstrap es necesario tener conocimientos en CSS, para hacerlo en Laravel o Codeigniter es necesario tener conocimientos en PHP ¿que es posible trabajar sin estos conocimientos? claro que sí, pero más temprano que tarde toparías con una pared que te impediría avanzar sin conocimientos más avanzados. No sé si me explico claramente, pero espero que haya sido comprensible, saludos!!
@pildorasinformaticas8 жыл бұрын
La explicación del compañero es perfecta. Yo no lo habría explicado mejor. Un saludo
@sebastianlopez7288 жыл бұрын
Todavia no empece este curso, estoy con el de javascript...pero una pregunta. Falta mucho para termines con este curso? o sea quedan muchos videos mas?
@pildorasinformaticas8 жыл бұрын
Hola !! No quedan muchos vídeos. Pero no puedo darte fecha de finalización porque subo vídeos en función de mi tiempo libre que no se cuando voy a tener. Un saludo!!
@ruzlanrojas19256 жыл бұрын
A mi me daba siempre false, pero solo con los usuarios que tenía registrados con sistema login, por ejemplo en el video sería JUAN y MARIA, esos los borré y registré nuevos usuarios con formulario_insertar_usuarios.php y solucionado
@emilioserna52997 жыл бұрын
hola,ya vi todo el curso y creo que se te paso explicar lo de las cookies y que no se puedan falsificar,crees que me puedas decir como buscar informacion o como se llama el metodo o algo?
@pildorasinformaticas7 жыл бұрын
Las cookies las hemos visto en el curso de los vídeos 63 a 67. Lo que no he visto porque lo desconozco es si se pueden falsear o no. Tampoco tengo conocimientos de página o libro que hable de ello. Lo tendría que investigar. Un saludo!!
@listabolet99038 жыл бұрын
Hola Juan, quería preguntarte si haremos algun tipo de chat en el que puedan hablar dos usuarios loggeados o alguna cosa parecida. Muchas gracias,Jordi
@pildorasinformaticas8 жыл бұрын
Pues no había pensado una práctica como esa. Aunque me parece muy buena idea. Tomo nota y si puedo lo meto en el curso. Un saludo!!
@listabolet99038 жыл бұрын
Ok, muchas gracias por la respuesta. Estaré atento a los videos :)! Respecto el curso siempre lo comento: genial el contenido y la manera de explicar. Siempre lo recomiendo a la gente que, como yo, quiere aprender PHP/MySql
@tvdigitalhdk69207 жыл бұрын
HOLA BUENAS TARDES, DISCULPA CON QUE PROGRAMA HACES LAS ANOTACIONES DEL LOS VIDEOS
@mariodelia38238 жыл бұрын
Saludos Pildorasinformaticas me hallo interesado en realizar varios de sus cursos y agradeceria que me ayudara en saber en que orden seria realizar estos cursos: Curso Access 2010 PHP/MySQL SQL HTML5 JavaScript Java.... Graciaas
@pildorasinformaticas8 жыл бұрын
Hola !! Creo que has puesto este comentario en otro vídeo por ahí y ya lo contesté. Espero que lo encuentres. Un saludo
@carlosolivaresfigueroa79428 жыл бұрын
Yo te recomiendo que hagas : 1. HTML5 2. PHP/MYSQL 3. SQL
@MiguelRodriguez-iv4ip8 жыл бұрын
Pero para aprender MySQL debe aprender el lenguaje de consultas SQL, por lo que creo que deberia ir con buenas bases, aprendiendo SQL en segundo lugar.
@johanretd38395 жыл бұрын
el error de password_verify q tenia si q era muy frustrante pues siempre retornaba 'false' asi q para solucionar esto c tiene q hacer dos cosas: 1.- borrar los datos ---- truncate 'usuarios' 2.- la estructura tiene q tener un varchar(150) a mas despues ya pueden agregar datos ... insert into usuario (nomusuario, passwd) values('hola','123') y ya ta ... ;D
@Reneay20118 жыл бұрын
Hola, como estas? Muchas gracias por el curso, la verdad que muy bien explicados todos los videos, me ha servido mucho, y sigo aprendiendo. Con el tema de seguridad, te queria consultar, que pasa con el archivo conexion.php, que contiene los datos de acceso a la base de datos, por mas que la contraseña sea autogenerada con caracteres #$$%&&//( para que sea dificil descifrarla, en el archivo php, no esta la contraseña en un formato texto?? si yo uso algun programa para descargar sitios, no se puede descargar, ese archivo con los datos de acceso y dejarlo a cualquiera que haga su propio codigo php y acceda a los datos de la base?? Gracias!
@pildorasinformaticas8 жыл бұрын
Hola !! Si lo proteges como es debido en tu servidor, no. Debes darle permiso 440 al archivo para que solo lo pueda leer el propietario del archivo. Esto se hace con cualquier programa FTP tipo FileZilla y es la forma que utilizan todos los CMS para proteger el archivo de configuración de BBDD (usuario, contraseña, servidor de BBDD etc) Un saludo!!
@jesuv58757 жыл бұрын
Hola juan. He visto que password_verify funciona si la contraseña esta cifrada. Pero si yo tengo usuarios a los cuales ya registré sin cifrar, ¿Como puedo hacer para cuando los introduzca el el formulario estos me salgan como registrado? una vez terminado el código intenta ingresar juan como usuario y password 1234 y veras a que me refiero. Un saludo
@jalp358 жыл бұрын
Para cuando mas videos, y sobre todo el CRUD, gracias
@pildorasinformaticas8 жыл бұрын
Los tienes ya en el curso. Vídeos 70, 71, 72... de momento. Un saludo
@jalp358 жыл бұрын
pildorasinformaticas gracias
@andresmendoza71057 жыл бұрын
hola profe una pequeña consulta porque no hiciste el login con hash con el anterior trabajo que eran las sesiones??
@pildorasinformaticas7 жыл бұрын
Quizá porque no había explicado a esa altura del curso lo que era un hash... Un saludo!!
@andresmendoza71057 жыл бұрын
pildorasinformaticas entiendo querido profesor, pero se puede hacer un login con hash y con sesiones? es mi gran duda profesor espero por favor su ayuda
@carlosverdes28287 жыл бұрын
en la mitad del video hubo problemas de seguridad ya que con el contador solo se obtiene todos los usuarios con el mismo nombre pero aqui con este codigo intento hacer que no aigan dos nombres iguales para poder registrar un usuario sin que se repitan los nombres y asi al buscar un usuario y desencriptar su clave se haga mas facil ya que sabemos que no se registraran dos nombres iguales
@carlosverdes28287 жыл бұрын
y aun asi lo que se rescata del $_POST se debe pasar por otras funciones para verificar que no tengan caracteres raros como lo explica el profesor
@martinfarias1037 жыл бұрын
Mi humilde aporte es que... si tu necesidad de que los nombres de usuario sean distintos a la hora de guardarlos en la base de datos, uses UNIQUE KEY `USUARIO` (`USUARIO`) a la hora de crear la tabla en la base de datos, cosa que si se quiere registrar un usuario con un nombre ya existente.... dará error en la consulta SQL. dicho error lo podrás tratar con el try-catch. creo que el código de error es el #1062. espero que te sea util.
@ElRinconDeJavo8 жыл бұрын
Que por cierto aquí me quede con una duda. Con este método encriptamos la contraseña desde PHP, lo cual está muy bien, pero si tenemos registros sin encriptar (hechos directamente desde MySQL, por ejemplo, el registro 0 que por regla general coincide con el usuario administrador) al comparar las contraseñas no coinciden y no permite el acceso, entonces mi duda es si se puede encriptar directamente en MySQL, al menos para ese registro inicial, o quizás otra forma de iniciar sesión en la que haga valida la contraseña sin encriptar al momento de iniciar sesión para poner una contraseña X en el primer registro y luego ya editarla desde PHP. Una disculpa nuevamente si la pregunta es necia, aunque estado investigando por mi cuenta temas de seguridad aun no los domino en absoluto. ¡Saludos y mil gracias por el video! (no lo había dicho, había respondido a otros comentarios, pero me falto agradecerte jejeje)
@pildorasinformaticas8 жыл бұрын
Hola !! Sí, se puede cifrar directamente en MySql. Mira esto: mysql.conclase.net/curso/?sqlfun=AES_ENCRYPT Respecto a lo que preguntas "o quizás otra forma de iniciar sesión en la que haga valida la contraseña sin encriptar al momento de iniciar sesión para poner una contraseña X en el primer registro y luego ya editarla desde PHP." no entendí del todo la pregunta...
@ElRinconDeJavo8 жыл бұрын
Ahhhh, ya vi... voy a guardar esa página para revisarla con calma, mi error fue que estaba buscando Blowfish y en MySQL tenía que buscarlo como AES_DECRYPT/ENCRYPT, como diría Cantinflas "Ahí está el detalle chato..." jejeje Respecto a la pregunta, disculpa si me explique mal, el don de la palabra no es lo mío, que no me entiendan es algo que se repite muy seguido xD al principio nos enseñaste como iniciar sesión con la contraseña sin cifrar, ahora nos enseñas a iniciar sesión con la contraseña cifrada, pero con la contraseña cifrada compara la contraseña sin cifrar y la contraseña cifrada; si coinciden, adelante, si no, lo que sea ¿Qué pasa si la contraseña no está cifrada en la base de datos pero es la contraseña que el usuario introdujo en el formulario? Que al comparar no coinciden (según entiendo…), entonces me preguntaba si había alguna forma de hacer valida esa comparación tanto si la contraseña estaba cifrada, como si no lo estaba, aunque creo que pudiendo cifrar directamente en MySQL no sería necesario algo tan trillado; normalmente cuando se me presenta algo nuevo suelo pensar en cómo podría utilizarlo y las mil formas que un usuario podría estropearlo, y a veces se me ocurren simplezas como esas. xD Saludos y mil gracias!
@jhonfredytabordagomez98228 жыл бұрын
Una pregunta: Si despues de hacer la consulta recibimos la contraseña y usuario con BindValue y después le damos execute, a cual de las variables se le agrega el password_verify? ... Gracias
@cristianmartin2548 жыл бұрын
que versión de wamp server estas utilizando para este curso...?
@pildorasinformaticas8 жыл бұрын
La última al momento de grabar los vídeos. Te servirá la última versión. Un saludo!!
@braulioanderson20046 жыл бұрын
No sabia que podía usar un marcador dentro del array de esta forma: $resultado->execute(array(":login"=>$login)); Ya que cuando usamos marcadores se debía usar la función bindValue pero muy interesante, esto es nuevo para mi. Pero me trae duda de si hay diferencia?
@pildorasinformaticas6 жыл бұрын
No, no hay diferencia. (En cuanto a resultados) Un saludo
@rdrgox5 жыл бұрын
hola muy buen video. como puedo ingresar password_hash a través de una scrip sql como se hacia con md5 o sha1, etc... que uno introducía por ejemplo sha1(‘1234’) o password(‘1234’) y aparecía cifrada en la base de datos. es posible hacer algo parecido con password_hash? saludos
@andresolano32046 жыл бұрын
Hola Juan! primero que todo muchas gracias por tus tutoriales, soy nuevo en la programación y tus videos me han enseñado bastante. Espero que puedas ayudarme con una duda, o alguien de la comunidad, se los agradecería mucho. Tengo una base de datos" login", con una tabla "cuentas" que tiene los campos usuario, contraseña y tipo_cuenta que puede ser Administrador o Usuario. Para iniciar sesion solo tengo dos formularios para los campos usuario y contraseña. Segui los pasos del video y todo perfecto, la cosa es que me gustaria validar el tipo de usuario, que si en la BD indica que X usuario es administrador me direccione a la pagina de administradores, y si es usuario a la pagina de usuarios. Como podria hacer estas validaciones? He intentado diferentes "if" pero no he logrado lo que quiero.
@miguelangelq.84437 жыл бұрын
algo que no entiendo es por el minuto 9:40 donde indicas en la consulta un unico marcador que devuelve una lista con el registro o registro de las personas que tienen ese mismo usuario. Mi duda es la siguiente si existen mas de un usuario con el mismo username y la misma contraseña como el sistema detecta de quien es por ejemplo su panel de control al iniciar sesion, o me estoy confundiendo o quieres decir que puede haber 20, 30, 50 personas con el mismo usuario pero con diferentes contraseñas pero no veo donde valides esa opcion y viendolo por otro lado en la mayoria de aplicaciones no permiten q una persona(USUARIO) tenga el mismo USERNAME si ya esta registrado indicandole en pantalla que escriba otro o seleccione otro por q este ya existe. No le veo la logica a la consulta q realizas de que te liste los los usuarios por username si existen mas de 1, si existe 1 ok no hay problema pero si existen mas de 1, 20, 30 , 50 ? Gracias espero pronta respuesta y muy buen video lo tratare de implementar en mi proyecto.
@pildorasinformaticas7 жыл бұрын
Lo más habitual es que una web que te pide login no permita que haya más de 2 personas con el mismo usuario. Pero que sea lo más normal no quiere decir que sea siempre así. Ya no recuerdo qué estaba explicando en este vídeo en concreto, pero seguramente era algo relacionado con la encriptación y para simplificar el ejemplo y centrarme en el encriptado omití toda la parte del programa que comprueba e impide que dos usuarios con el mismo usuario se puedan logear. Un saludo!!
@diegogallo85555 жыл бұрын
Hola Miguel, acerca de tu pregunta yo me plantié la misma ya que la explicación del profesor no me parecía muy lógica a pesar de que cumplía su cometido. Resulta que la parte donde pone un contador dentro del if no es que cuente cuantos usuarios coinciden con esa contraseña, lo que en realidad hace es ver si cadena "hash" que se encuentra en la BD coincide con lo que el usuario ingresa en el frmComprueba_login el cual se compara a travéz de la función "password_verify". Ahora que sucede si es que existen dos usuarios con el mismo ID pero con diferentes contraseñas como identificar cual es cual, en este caso lo que yo hice es además del mensaje de confirmación imprimir también el "id" del usuario de esta manera puedo identificar que usuario fue el que se esta logeando. Cuando probé esto dije parece que esta es la solución a mis dudas pero no fue por mucho hasta que se me ocurrió, que pasa si tengo 2 o mas usuarios con el mismo ID y PASSWORD entonces volvi hacer pruebas y noté que esta validación solo me muestra el último usuario registrado con credenciales duplicadas, entonces llegué a la conclusión de que siempre es necesario tener un ID diferente ya que este será el factor clave para validar un usuario independientemente de que este tenga una contraseña identica a otro usuario. Por ello las web siempre validan los ID ya que es la forma más practica de evitar credenciales duplicadas.
@gerardosorto93735 жыл бұрын
¿Esto ayuda con SQL Injection? ¿Verdad?
@xabierapariciomunoa60796 жыл бұрын
Una aclaración! He introducido Luís con tilde y me decía el programa Usuario no Registrado, a qué se debe? Muchas gracias!!
@pildorasinformaticas6 жыл бұрын
A que distingue tildes. Puedes utilizar comodines o evaluar Luis con tilde y sin ella, como tú prefieras. Un saludo!
@emmanuehernnedez44207 жыл бұрын
tengo un problema... ya hice lo de tus tutoriales... pero si se me olvida la contraseña de un usuario... como recuperar la contraseña.... se que es desencriptar... pero no he encontrado la forma.... y excelente video... gracias por el dato... de encriptar y logearse....
@jaimedavidcastellaryamal35947 жыл бұрын
Según entiendo en el video el administrador del sitio no conoce la contraseña, me parece excelente función. Pregunto como hacen los sistemas para recuperar la contraseña pérdida.
@OsmaniLugoSanchez11 ай бұрын
Hola, esto lo entiendo bien. Pero lo que me gustaría saber es cómo protejo las credenciales del la conexión a la base de datos de tal manera que cuando haga el ejecutable para distribuirlo las contraseñas no estén ni en el código ni en el paquete del ejecutable. Saludos.
@djpanxxxo0008 жыл бұрын
hola amigo estoy viendo la seguridad y decidí añadirle el password_hash como lo enseñaste esta muy bien en lo que respecta al ingresar y al validarlo pero tengo un problema en la administración al yo querer no se cambiar la dirección de un registro de usuario se envía el formulario que tiene nombre, rut, direccion, password pero el hash es distinto ahora si me deslogueo o salgo de mi sesión al volver a iniciar sesión me dice que la contraseña es incorrecta sabes por que ocurre y sabes la solución ?? el punto es que si yo cambio la direccion no tiene por que modificarse la contraseña siendo que la estoy capturando
@ismaelpinzon18978 жыл бұрын
Buenas, llevo ya un rato mareado con esta práctica. El problema que tengo es que no me entra en el if del password_verify. Por ello, me sale siempre usuario no registrado. Lo tengo todo tal cual lo tienes tu, y el programa funciona bien antes de hacerle las modificaciones, o sea, para mostrar solamente usuario y contraseña sin encriptar. He cambiado el campo PASSWORD con un VARCHAR(255) y aún así sigue fallando. A ver si tiene alguna pista de por qué me está pasando eso. Aprovecho para agradecerte la labor con tus videos ;)
@pildorasinformaticas8 жыл бұрын
Hola !! No sabría decirte desde aquí. Copia y pega por aquí todo tu código para ver el posible error. Un saludo!!
@ismaelpinzon18978 жыл бұрын
@pildorasinformaticas8 жыл бұрын
Mi conexión apunta a la BBDD "pruebas". Tu conexión apunta a la BBDD "curso_sql". Yo en la BBDD "curso_sql" no tengo ninguna tabla con el nombre de usuarios que es donde estamos haciendo la consulta. No se cómo lo tendrás tú, pero el problema puede ir por ahí. Un saludo!!
@ismaelpinzon18978 жыл бұрын
Buenas de nuevo, si es verdad que apunta a curso_sql. Hice tu curso de sql también y metí esta practica en esa base de datos, que no te lo comenté en el otro mensaje. De echo, el programa funciona mostrándome los usuarios, pero a la hora de añadir el if con el password_verify, pues no entra en el if para incrementar la variable $contador. En todos los demás sitios he hecho pruebas poniendo echo y funciona todo, menos el if que te comento, que es la clave para esta práctica. Por eso el volverme loco, porque funciona correcto si no pongo ese if y dejo el programa para que muestre solo a los usuarios. Las llaves y todo lo veo bien también. Trabajo con el paquete xampp para mac, el cual tiene PHP 5.5.31, que soporta supuestamente sin problemas ya la función password_verif() y phpMyAdmin 4.5.2, ya que wamp no lo hay para mac. No se si tendrá algo que ver la versión que tengo de phpMyAdmin. También he probado con el paquete mamp y me pasa lo mismo. Gracias por tu atención Juan. Un saludo.
@pildorasinformaticas8 жыл бұрын
Pues es que he probado tu código con mi bbdd y a mi me funciona. Lo que me lleva a pensar que se trata de algún problema de compatibilidad con la función password_verify. Pero ahora mismo no sabría decirte con seguridad.
@jordimasianavarro86914 жыл бұрын
Muy buenos todos los videos pero una cosita en este, funciona con todos los que tenemos longeados con contraseña con algoritmo, pero si pongo el primero que registramos por ejemplo JUAN contraseña 1234 sin cifrar, me da usuario no registrado, os ha pasado lo mismo? gracias
@donate294 жыл бұрын
Hola, no hay manera de que me funcione esto probe agrandando el varchar hasta 255 el contador nunca aumenta creo que el fallo esta al leer el password desde la base de datos , por que si lo copio y lo asigno manualmente el password_verify me funciona , no entiendo en que esta fallando la bd
@sergioestebanjuncocastro38587 жыл бұрын
Podrias explicarme como puedo añadir una condicional en donde el usuario que tenga asignado en el campo rol_id_rol =1 lo redirija ala interfaz de administrador de lo contrario sea dirijido a la interfaz de cliente!! lo intente con este ejemplo pero no pude hacerlo me salen errores.
@xhslv76 жыл бұрын
AYUDA de donde podria descargar ahora los archivos si la pagina ya no accesa? :(
@L.Nightmare8 жыл бұрын
Buenas tardes, en el minuto 16:30 ya esta el codigo listo, partiendo por ahi, tengo una duda, si se supone que login que es el nombre de usuario es unico, la consulta sql solo deberia devolver el resultado unico, por ende, es necesario hacer eso del contador?, por que no usar la funcion para saber cuantos registros devolvio la consulta? o es solo para cuando se trabaja con staments? de antemano gracias
@L.Nightmare8 жыл бұрын
p.d: rowCount(); si no me equivoco
@pildorasinformaticas8 жыл бұрын
No recuerdo ya el código que hice en este vídeo. Pero lo normal es que el usuario pueda estar repetido en la BBDD. Lo que será único es usuario + contraseña. De igual forma se puede utilizar rowCount y en algún vídeo lo he utilizado. No recuerdo por qué motivo en concreto utilicé un contador en este vídeo.
@Robertofiguera-dev8 жыл бұрын
Creaste 1 contador.... para que al tratar de iniciar sesión recoja por ejemplo si hay 5 marias. todas las marias.... luego las metiste en 1 while las recorres, y verificabas el password encriptado con el no encriptado... obvio va a devolver 1 maria coincidiendo los dos hashes..Es una buena manera hacerlo asi?
@pildorasinformaticas8 жыл бұрын
Sí, es la manera habitual. Lo que no es habitual es tener password en la BBDD sin encriptar (esto lo digo para que no haya dudas al respecto)
@Robertofiguera-dev8 жыл бұрын
Entiendo gracias por atender la duda.
@jalp358 жыл бұрын
Perdona se me ha olvidado preguntártelo antes, como se puede hacer un archivo .htacces, gracias y perdoón por ser pesado
@pildorasinformaticas8 жыл бұрын
Hola !! No eres pesado. No hay nada en especial para hacer un archivo .htaccess excepto saber hacerlo!:)) Me explico: lo puedes hacer con el bloc de notas de windows o cualquier editor de texto plano siempre que guardes el archivo con extensión .htaccess. Ahora bien, el código que puede llevar un archivo .htaccess en su interior puede ser casi infinito. Ya sabes que se trata de un archivo que guarda la configuración del servidor Apache, y los parámetros posibles de esta configuración son muchísmos. Un saludo!!
@jalp358 жыл бұрын
Muchas gracias
@MARISABEL962 жыл бұрын
Excelente tuto, pero los archivos ya no se encuentran en linea...
@davidbanegas847 жыл бұрын
tengo un problema, cuando intento definir mas variables de sesión me marca errores ¿ POR QUE OCURRE ?
@deyviarellano7 жыл бұрын
Saludos una consulta, tendrás una función que me permita desencriptar la contraseña para mandarla por correo cunado el usuario no se acuerde ?
@pildorasinformaticas7 жыл бұрын
No, no tengo esa función y además la desconozco. Lo que si te puedo decir es que lo normal es que ni siquiera tú tengas acceso a la contraseña y que lo que envíes al usuario sea un correo para que cambie su contraseña en caso de olvido. Las web que envían la contraseña sin cifrar es porque o la tienen guardada sin encriptar o porque la encriptación es muy débil.
@deyviarellano7 жыл бұрын
Si es verdad no se puede es un tema de seguridad, muchas Gracias! Muy buen video (Y) !!
@rafaelfernandopolocucaita33206 жыл бұрын
me salvaste
@alejomejia55526 жыл бұрын
Hola, estoy untentando hacer lo mismo pero al ejecutar pasa directamente a la condicion del else, pareciera que no incrementara el contador.
@chichiinc.6 жыл бұрын
a mi me pasaba lo mismo y era porque en un principio estaba intentando con contraseñas que no habían sido cifradas al registrarlas. Por tanto la funcion password_verify() regresaba false.
@luisalbertopaterno8 жыл бұрын
Hola profesor: Me graba los datos correctamente pero al poner la $variable=password_hash($contresenia, POSSWORD_DEFAULT); me da como respuesta Fatal error: Call to undefined function PASSWORD_HASH() in C:\xampp\htdocs\Pruebas\administracion\pagina_insertar_usuarios.php on line 16 en esa linea está el password_hash. Lo he revisado y todo está exactamente igual a como Ud. lo escribió. ¿por qué no me lo reconoce? Todo está hecho con Sublime Text 2, pero, antes lo hice con DreamWeber y me respondía que eso no iba así? Agradecería su respuesta por favor. Gracias.
@jimenezpedro51438 жыл бұрын
en el segundo parametro que se le pasa a la función password_hash (donde ponemos PASSWORD_DEFAULT) pusiste pOssword_default en vez de pAssword_default
@alejandroalonso6027 жыл бұрын
Haber como puedo desencriptar la contraseña, porque como veras en nuestro sistema los usuarios tipos administradores si tiene autorización de ver la contraseña de un usuario en especifico
@مجهولمجهول-ص5ه8ش6 жыл бұрын
Lo que no dice en el video es que la columna password debe tener un tamaño de 255 por que de lo contrario puede fallar yo lo tenia en un tamaño 30 y no se me mostraba todo la contraseña encriptada :V
@brianl54855 жыл бұрын
me paso lo mismo hahaha pero ya lo solucione
@pabloantequera70726 жыл бұрын
Hola, me podrias ayudar? ejecuto password_verify de forma local y funciona a la perfeccion pero al subir los archivos al servidor esta funcion deja de funcionar alguien sabra porque? las consultas a las bd esta correctas ya que obtengo el valor de los demas campos de las tablas. es solo esta funcion la que presenta problemas solo en el servidor.
@JuanDeSouza77 жыл бұрын
No pusiste el archivo "comprueba_login.php" dentro del archivo zip...
@pildorasinformaticas7 жыл бұрын
Ups!! Pues lo siento. Eres el primero que me lo indica. Si lo encuentro lo meto. Gracias por avisar. Un saludo!!
@yesicaguadalupefloresgutie38298 жыл бұрын
hola juan porque no me reconoce: password_hash ?!?! por favor ayuda
@pildorasinformaticas8 жыл бұрын
¿Has comprobado que el código es correcto? Copia y pega por aquí tu código para ver si te puedo ayudar. Un saludo
@ferhogan8 жыл бұрын
necesito su ayuda por favor, a todos los usuarios me los marca como usuarios " No registrados" y si los tengo en la bdd, muchas gracias por su atencion
@Robertofiguera-dev8 жыл бұрын
Dale mirar estructura a tu tabla en la base de datos y fijate si el campo password tiene longitud de caracteres 20... tienes que ponerle mas, ya que creo que es porque no caben los caracteres cuando haces el hash y por ende nunca podrias entrar xq la clave no te guardo el hash completo.
@ferhogan8 жыл бұрын
Roberto figuera gracias ya lo había resuelto cambiando el valor en la bdd del campo contraseña
@Robertofiguera-dev8 жыл бұрын
oks
@danieladasz7 жыл бұрын
Estoy muy preocupado ya que password_verify me manda siempre false y ya eh aumentado la logitud del varchar a 255 para mayor seguridad y sigue mandandome falso. por favor espero puedan ayudarme. (No genera ningun error puesto a que no existe tal en el codigo, lo preocupante es eso mismo y que siga mandando FALSE cuando las contraseñas son las mismas.)
@pildorasinformaticas7 жыл бұрын
Hola !! Tal vez no tengas errores de sintaxis en el código pero si errores de lógica o programación. Revisa tu código con el del vídeo línea a línea y comprueba que todo está igual. Si no ves el error, puedes copiar y pegar por aquí tu código para ver si alguien encuentra tu error. Un saludo!!
@danieladasz7 жыл бұрын
si, fue eso mismo, error de logica, me puse a ver el codigo y estaba cifrando una palabra y no la de la variable donde almacenaba la contraseña, gracias. (Y)
@franconolbertovilchezmore18427 жыл бұрын
vuelve a ingresar los valores desde le primer formulario, pero ya con la longitud de 255, y luego búscalo con el segundo formulario, yo pase por lo mismo y gracias a dios se solucionó, ya esta rompiéndome la cabeza. Dios te bendiga, espero hayas resuelto tu problema.
@mariavictoriacastrodotta75584 жыл бұрын
Hola buenos dias! yo uso password_hash($pass, PASSWORD_DEFAULT); y cuando hago un verify me da siempre error, porque me crea un algortimo automático para cada pass que meto. Entonces nunca hay coincidencia y no entiendo como arreglar el tema de la sal. si alguien puede ayudarme! gracias
@adriancordova16183 жыл бұрын
echale menos sal
@GIANPOOLL6 жыл бұрын
Buenas Juan una consulta en mi ordenador no he podido usar la función password_hash() me sale error en mi ordenador: ( ! ) SCREAM: Error suppression ignored for ( ! ) Fatal error: Call to undefined function password_hash() in C:\wamp\www\Curso_php\Encriptado_Pass\pagina_insertar_usuarios.php on line 14 Call Stack # Time Memory Function Location 1 0.0009 255328 {main}( ) ..\pagina_insertar_usuarios.php:0 ya revise mi versión de PHP y esa función es compatible que debo hacer.....????? otra cosa si puedo usar la función crypt() con esta si pude guardar datos encriptados en mi servidor Profe una cosa mas .... :( no puedo usar tampoco la función password_ferify()
@paulvalencia92436 жыл бұрын
De hecho el if(password_verific) no retorna la cantidad de usuarios por que es un boleano, retorna true o false, por lo que el contador sobraria, bastaria solo colocar despues de la verificacion el echo "USUARIO REGISTRADO"
@johanberrio73657 жыл бұрын
Y como hago para que el usuario no introduzca la URL de la zona de usuarios registrada y se salte el registro, porque si no se valida eso, entonces esto no tiene ningun sentido
@pildorasinformaticas7 жыл бұрын
Prueba a hacerlo y si consigues entrar en la zona usuarios registrados me lo cuentas. (No te olvides de cerrar y abrir el navegador antes de hacerlo). Un saludo!!
@paulvalencia92436 жыл бұрын
Asi es mas facil $sql = "SELECT * FROM usuarios WHERE usuario = :usuario"; $consulta = $conexion->prepare($sql); $consulta->execute(array(":usuario"=>$usuario)); $respuesta = $consulta->fetch(PDO::FETCH_ASSOC); if($respuesta > 0){ if(password_verify($password,$respuesta['password'])){ echo "ud se ha logueado mi social"; }else{ echo "No señor aqui ud no puede entrar"; } }
@emanuelcastrosuazo17737 жыл бұрын
pues no logro resolverlo , tengo el codigo tal cual esta en el video y siempre me arroja que el usuario no existe , siendo que si lo he registrado en la base de datos , no se que podra ser , alguien que pueda hecharme una mano ?
@pildorasinformaticas7 жыл бұрын
Este tipo de errores sin ver el código y la BBDD en directo es complicado que te podamos ayudar. Revisa tildes, espacios en blanco etc. Un saludo!!
@emanuelcastrosuazo17737 жыл бұрын
Mira , te envio el codigo , lo tengo exactamente a como lo escribiste en el video pastebin.com/8GVsB2yX Estare atento a cualquier ayuda , la verdad no se que puede estar fallando
@jesuv58757 жыл бұрын
te da negativo cuando no tienes encriptada la contraseña. A mi me pasa lo mismo
@JNTN__7 жыл бұрын
revisa la cantidad de caracteres en la base de datos del campo contrase;a, la logitud debe ser minimo varchar 255
@jefersonmunoz13554 жыл бұрын
Alguno se ha encontrado con el problema de undefined index: "password" en la línea donde está el if con el password_verify? He buscado muchas formas de solucionarlo y ya llevo demasiado tiempo tratando de solucionarlo y no he podido
@yordiic.e20294 жыл бұрын
Explicate un poco mas a detalle, quisas te pueda ayudar
@jefersonmunoz13554 жыл бұрын
@@yordiic.e2029 donde está if(password_verify($password, $registro["password"])){} me daba el error notice undefined:password bueno yo en vez de "password" tenía "contraseña" el cuál es el campo que tengo en la bbdd donde se guarda la contraseña, pero el error se producía porque tenía una Ñ y al ejecutarse el código daba como indefinida puesto que la Ñ es un carácter que no esta permitido, pero ya lo pude arreglar y muchas gracias igualmente👍
@98milok7 жыл бұрын
$numcount=$entrada->rowCount(); $registro=$entrada->fetch(PDO::FETCH_ASSOC); $contra=$registro["PASSWORD"]; if($numcount!==0){ if(password_verify($p_password,$contra)){ echo "Usuario registrado";} else{ echo "Usuario no registrado"; } } Sin tanta vaina, no?
@pildorasinformaticas7 жыл бұрын
Ya no recuerdo qué hice en este vídeo, pero si te funciona bien ese código, perfecto ! Uno no escoge siemrpe el camino más corto. Un saludo!!
@joseluisfernandez59817 жыл бұрын
Hola Juan Camilo, tu código sería correcto en caso de que hubiese un usuario con nombre único en la tabla, en cuanto hay más de un resultado (varios usuarios con el mismo nombre) en el array devuelto por fetch(PDO::FETCH_ASSOC), hay por lo tanto más de un valor asociado a $registro['PASSWORD'] por lo que se hace necesario recorrer el array para comprobar todas las contraseñas. Con el if, se analiza sólo una fila, por lo que devuelve 'usuario no registrado' cuando en verdad sí que existe.
@angelortiz66277 жыл бұрын
el codigo de juan es demaciado correcto , lo que no sabes que juan no a explicado ningun tema de base de datos relacionado como por ejemplo las llaves primarias y foraneas, diagramas de entidad relacion etc., eso es por tu cuenta, en el caso que tu dices, basicamente no pueden a ver dos login identicos como tampoco existe en el mundo dos personas con el mismo tipo de num de registro de nacimiento, esto seria validacion, en ningun momento se a metido en esto , es un curso practico, no todo lo puedes pedir deberias de leer, para que no haya una replica de usuario tendrias que creear el login con la prpiedad primary key y ya con esto le dices que eso sera una llave primaria y que nadie mas en tu base de datos podra tener el mismo argumento todos tendrian que ser diferentes en momento de que vuelvas a querer insertar un dato con la misma información te dara error., cuando se salte el error deberias de mandar una consulta que si el usuario existe te mande un msj de alerta y obvuamente que le puedas mandar sugerencias de logins! o nombres por registrar si asi deseas verlo....
@juancastellanos2677 жыл бұрын
La cosa es que Juan no especifica cómo lo usa, en mi caso, es perfecto y me ayudó demasiado, ya que el "PK" de mi proyecto es el correo (algo que no se repetirá en el mismo). Gracias.
@angelortiz66277 жыл бұрын
Juan Castellanos pues e visto todo el video y el curso y a mi parecer eta muy bien explicado, te hace falta llevar un poco más de fundamentos de bases de datos, pero tu idea es correcta...así se logea uno en face o con numero de teléfono es cuestión de saber usar los operadores lógicos y consultas y bueno eso es todo.
@williamhuarcayavalenzuela85576 жыл бұрын
y para recuperar la contraseña como hago?
@gerardoicu5 жыл бұрын
supongo que ese no es el propósito, sino estarías violando la privacidad que un principio se comentó
@williamfernandozambrano24794 жыл бұрын
Alguien me puede ayudar por favor, utilizando password_verify me da siempre false, ya le cambie el parámetro del campo en la base de datos y esta VARCHAR(255). Actualmente utilizo la versión de php 7.4.0 y myadmin 4.9.2...
@humbertopadilla19363 жыл бұрын
Estimado: Sé que después de un año, ya encontraste la solución, por lo que la solución que encontré, la pongo para cualquiera que esté despistado, como yo y después de darle vueltas y vuelta y todavía no la ha encontrado y este a punto de volverse loco como yo. 1) ciertamente hay que cambiarle la longitud a varchar(225) del password. 2) hay que verificar el dato del password en la tabla usuarios_pass este correcta, pues si generamos la contraseña cifrada cuando varchar(20) tenía esta longitud seguramente se generara una contraseña errónea(ejemplo: $2y$10$uwwDpGviLve/V ) 3) si es el caso, generar contraseña correcta, una vez realizado el cambio de longitud en el varchar(225) del password (ejemplo: $2y$10$jX7sEfXKE3ZZde8w7nt06u5PO6b8GUBessrMPSwYTgOauYPj0olue). 4)por último simplemente introducir los datos de nuevo en la página del login. Bueno espero que a alguien le sirva, como a mí me ayudo… saludos cordiales.
@marianelacuello84412 жыл бұрын
@@humbertopadilla1936 graciass, para mi fuiste de mucha ayuda!!
@ellider416 ай бұрын
@@humbertopadilla1936 Excelente lo corregí y funciono perfecto, muchas gracias por tu aporte
@hellolucas64274 жыл бұрын
lei todos los comentario, hice todo lo que vi en cada comentario y no logre solucinar este problema, me siento mal, nose pero quizas el codigo, lo hice todo varchar 255, borre los datos, hasta la luna fui y el problema sigue, si aun hay alguien con vida que me ayuden
@josenardulli6 жыл бұрын
Si alguno le da el erro de undefine index, pasen a minusculas los valores de usuario y password en la linea 33