Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: venadHD en 23 Octubre 2015, 19:50 pm



Título: [Resuelto] 500 internal error al ejecutar un script?
Publicado por: venadHD en 23 Octubre 2015, 19:50 pm
Bueno, hoy vengo con un problema que me ocurre unicamente con el codigo de login, ningun otro me tira ese error y no sé por que (algunas veces arranca, con otro usuario y contraseña), pero normalmente tira error 500

Este es el codigo, no sé que error tiene como para que tire HTTP 500

Código
  1. <?php
  2. function logerror($reason) {
  3. $_SESSION['logerror'] = $reason;
  4. header("Location: login.php");
  5. die('Redireccionando...');
  6. }
  7. if (!isset($_POST['usuario']) || !isset($_POST['pswd'])) {
  8. logerror("Falta algun dato");
  9. }
  10. if (strlen(preg_replace("([a-zA-Z0-9.-])", "", $_POST['usuario'])) > 0) {
  11. logerror("El usuario no debe contener caracteres no permitidos");
  12. }
  13. if (strlen(preg_replace("([a-zA-Z0-9.-])", "", $_POST['pswd'])) > 0) {
  14. logerror("La contraseña no debe contener caracteres no permitidos");
  15. }
  16. if (strlen($_POST['usuario']) < 6) {
  17. logerror("El usuario debe de tener 6 o mas caracteres");
  18. }
  19. if (strlen($_POST['pswd']) < 6) {
  20. logerror("La contraseña debe de tener 6 o mas caracteres");
  21. }
  22. //$haspass = //ENCRIPTACION DE LA CONTRASEÑA MEDIANTE CRYPT();
  23. $db = new mysqli ("localhost", "***", "***", "***");
  24. $query = $db->query("SELECT * FROM usrs WHERE usuario='".$_POST['usuario']."'");
  25. if ($query->num_rows > 0) {
  26. if ($query['pswd'] == $haspass) {
  27. $db->close();
  28. unset($db);
  29. logerror("Login correcto");
  30. } else {
  31. $db->close();
  32. unset($db);
  33. logerror("Contraseña incorrecta");
  34. }
  35. } else {
  36. $db->close();
  37. unset($db);
  38. logerror("El usuario no existe");
  39. }
  40. ?>


Título: Re: 500 internal error al ejecutar un script?
Publicado por: engel lex en 23 Octubre 2015, 20:10 pm
Error 500 normalmente es de configuración del servidor, te da solo con ese script o con cualquiera?


Título: Re: 500 internal error al ejecutar un script?
Publicado por: 0roch1 en 23 Octubre 2015, 20:15 pm
¿Qué servidor de aplicaciones estás utilizando?
¿El servidor lo tienes local o en un hosting?
¿Qué tal es tu conexión a internet?, siempre es estable o en ocasiones falla?.


Título: Re: 500 internal error al ejecutar un script?
Publicado por: venadHD en 24 Octubre 2015, 12:32 pm
Solo da en ese script

Uso apache2, sobre una base Linux Debian 7.8 (si mal no recuerdo) y si, mi conexion es estable, sobre eso, ayer le pase un vistazo muy centrado, y averigue este error


Código
  1. if ($query['pswd'] == $haspass) {
En vez de haber usado
Código
  1. if ($query->fetch_assoc()['pswd'] == $haspass) {

Ya lo tengo solucionado :D, pero gracias a todos por responder :)