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

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Registro de usuario con mysql no me funciona !
0 Usuarios y 2 Visitantes están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Registro de usuario con mysql no me funciona !  (Leído 5,684 veces)
neopuerta360

Desconectado Desconectado

Mensajes: 240


La mejor comunidad de neopets


Ver Perfil WWW
Registro de usuario con mysql no me funciona !
« en: 22 Diciembre 2010, 15:14 pm »

Hola a  todos y feliz navidad! Tengo un problema con un codigo q no me funciona...el problema esta en q cuando el usuario va inisiar sesion...no puede entrar....me sale un error, aqui esta  el codigo.


Código
  1. <title><? echo $titulo; ?>-Entrar</title>
  2. <?
  3. include("config.php") ;
  4. if($entrar) {
  5. function quitar($texto) {
  6. $texto = trim($texto) ;
  7. $texto = htmlspecialchars($texto) ;
  8. return $texto ;
  9. }
  10. $nick = quitar($nick) ;
  11. $contrasena = quitar($contrasena) ;
  12. $tema = quitar($tema) ;
  13. $resp = mysql_query("select contrasena,tema from usuarios where nick='$nick'") ;
  14. $datos = mysql_fetch_array($resp) ;
  15. if(mysql_num_rows($resp) != 0) {
  16. if($datos[contrasena] == $contrasena) {
  17. setcookie("npnick",$nick,time()+3600) ;
  18. setcookie("nptema",$tema,time()+3600) ;
  19. header("location: index.php") ;
  20. }
  21. else {
  22. echo "La contraseña es incorrecta. Haz click <a href=javascript:history.back()>aquí</a> para regresar." ;
  23. }
  24. }
  25. else {
  26. echo "Este usuario no existe en la base de datos." ;
  27. }
  28. }
  29. else {
  30. echo "
  31. <form method=post action=index.php?id=entrar>
  32. <b>Nick:</b><br>
  33. <input type=text name=nick maxlength=20 class=form><br>
  34. <b>Contraseña:</b><br>
  35. <input type=password name=contrasena maxlength=20 class=form><br><br>
  36. <input type=submit name=entrar value=Entrar class=form>
  37. </form>
  38. " ;
  39. }
  40. ?>
  41.  


En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: Registro de usuario con mysql no me funciona !
« Respuesta #1 en: 22 Diciembre 2010, 15:52 pm »

y cual es el error, no somos adivinos.


En línea

Te vendería mi talento por poder dormir tranquilo.
xassiz~


Desconectado Desconectado

Mensajes: 457



Ver Perfil WWW
Re: Registro de usuario con mysql no me funciona !
« Respuesta #2 en: 22 Diciembre 2010, 16:13 pm »

Así por encima.. ¿La variable $contraseña?
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: Registro de usuario con mysql no me funciona !
« Respuesta #3 en: 22 Diciembre 2010, 16:47 pm »

Observaciones,

De donde sale el valor de la variable $entrar?
Código
  1.  if($entrar){

-----

Para qué el TRIM(), en la función QUITAR();?
Código
  1.    function quitar($texto){
  2.      $texto = trim($texto);
  3.      $texto = htmlspecialchars($texto);
  4.      return $texto ;
  5.    }
Si existe un usuario con el nick 'Shell Root', podrá loggearse?

-----
El código más organizado, y creo que deberías de re-estructurar esos campos con caracteres especiales en la base de datos...
Código
  1. <title><?PHP echo $titulo; ?> - sLogin</title>
  2. <?PHP
  3.  include( "config.php" );
  4.  if( $sLogin ){
  5.    function sRemove( $sString ){
  6.      $sString = trim( $sString );
  7.      $sString = htmlspecialchars( $sString );
  8.      return $sString;
  9.    }
  10.  
  11.    $sNick = sRemove( $sNick );
  12.    $sPassword = sRemove( $sPassword );
  13.    $sTopic = sRemove( $sTopic );
  14.  $sSQL = "SELECT Password, Topic FROM tblUsers WHERE nick = '".$sNick."'";
  15.    $sQuery = mysql_query( $sSQL );
  16.    $sFetchRows = mysql_fetch_array( $sQuery );
  17.    if( mysql_num_rows( $sQuery ) != 0 ){
  18.      if( $sFetchRows['Password'] == $sPassword ){
  19.        setcookie( "npnick", $sNick, time() + 3600 );
  20.        setcookie( "nptopic", $sTopic, time() + 3600) ;
  21.        header( "location: index.php" );
  22.      }else{
  23.        echo "La Password es incorrecta. Haz click <a href = 'javascript:history.back()'>aquí</a> para regresar.";
  24.      }
  25.    }else{
  26.      echo "Este usuario no existe en la base de datos.";
  27.    }
  28.  }else{
  29.    echo "<form method='POST' action='index.php?id=sLogin'>
  30.      <b>Nick:</b><br>
  31.      <input type='text' name='nick' maxlength='20' class='form'><br>
  32.      <b>Password:</b><br>
  33.      <input type = 'password' name = 'Password' maxlength = '20' class = 'form'><br><br>
  34.      <input type = 'submit' name = 'Login' value = 'Login' class = 'form'>
  35.     </form>";
  36.  }
  37. ?>
En línea

Te vendería mi talento por poder dormir tranquilo.
neopuerta360

Desconectado Desconectado

Mensajes: 240


La mejor comunidad de neopets


Ver Perfil WWW
Re: Registro de usuario con mysql no me funciona !
« Respuesta #4 en: 22 Diciembre 2010, 20:58 pm »

Gracias! voy aver si me funciona....
En línea

Spider-Net


Desconectado Desconectado

Mensajes: 1.165


Un gran poder conlleva una gran responsabilidad


Ver Perfil WWW
Re: Registro de usuario con mysql no me funciona !
« Respuesta #5 en: 23 Diciembre 2010, 16:04 pm »

Para qué el TRIM(), en la función QUITAR();?
Código
  1.    function quitar($texto){
  2.      $texto = trim($texto);
  3.      $texto = htmlspecialchars($texto);
  4.      return $texto ;
  5.    }
Si existe un usuario con el nick 'Shell Root', podrá loggearse?

La verdad es que sí que podrá, creo que el trim() ahí no está de más.

Citar
string trim ( string $str [, string $charlist ] )
Esta función devuelve una cadena con los espacios en blanco eliminados del inicio y final del str. sin el segundo parámetro, trim() eliminará estos caracteres:

" " (ASCII 32 (0x20)), espacio simple.
"\t" (ASCII 9 (0x09)), tabulación.
"\n" (ASCII 10 (0x0A)), salto de línea.
"\r" (ASCII 13 (0x0D)), retorno de carro.
"\0" (ASCII 0 (0x00)), el byte NUL.
"\x0B" (ASCII 11 (0x0B)), tabulación vertical.

http://php.net/manual/es/function.trim.php

trim() borra los espacios al principio y final de la cadena, pero no los que están entre dos palabras.
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: Registro de usuario con mysql no me funciona !
« Respuesta #6 en: 24 Diciembre 2010, 02:25 am »

:o eso no lo sabía...
En línea

Te vendería mi talento por poder dormir tranquilo.
cassiani


Desconectado Desconectado

Mensajes: 978


« Anterior | Próximo »


Ver Perfil WWW
Re: Registro de usuario con mysql no me funciona !
« Respuesta #7 en: 27 Diciembre 2010, 23:06 pm »

si vale, igual que en vb
En línea

neopuerta360

Desconectado Desconectado

Mensajes: 240


La mejor comunidad de neopets


Ver Perfil WWW
Re: Registro de usuario con mysql no me funciona !
« Respuesta #8 en: 3 Enero 2011, 16:15 pm »

Shell Root Tengo una pregunta como hago esto:

Citar
creo que deberías de re-estructurar esos campos con caracteres especiales en la base de datos...

Por q creo q el error esta en la base de datos...x q el codigo esta bien! :)
En línea

neopuerta360

Desconectado Desconectado

Mensajes: 240


La mejor comunidad de neopets


Ver Perfil WWW
Re: Registro de usuario con mysql no me funciona !
« Respuesta #9 en: 3 Enero 2011, 16:32 pm »

hola, Nesesito ayuda con este codigo q no  me funciona:...

Código
  1. <title><? echo $titulo ?>-Enviar Boletin</title>
  2. <?php
  3. if (isset ($enviar)) {
  4. if($enviar) {
  5. function quitar($texto) {
  6. $texto = trim($texto) ;
  7. $texto = htmlspecialchars($texto) ;
  8. return $texto ;
  9. }
  10. $fecha = time() - 25200 ;
  11. $mensaje = quitar($mensaje) ;
  12. include ("conexion.php");
  13. $resp = mysql_query ("SELECT nick FROM usuarios where boletin='si'",$conexion);
  14. while ($row = mysql_fetch_array ($resp)) {
  15. $nick = $row ["nick"];
  16. $mensaje = $_POST ["mensaje"];
  17. }
  18. }
  19. else {
  20. $remitente =Boletin ;
  21. mysql_query("insert into mensajes (fecha,destinatario,remitente,asunto,mensaje) values ('$fecha','$nick','$remitente','Boletin','$mensaje')") ;
  22. echo "<p>El Boletin ha sido enviado con éxito. Haz click <a href=index.php>aquí</a> para regresar." ;
  23. }
  24. }
  25. else {
  26. ?>
  27. <form action="<?php $PHP_SELF ?>" method="post">
  28. Introduce el mensaje:<br><br>
  29. <textarea name="mensaje" cols=30 rows=5 class="form"></textarea>
  30. <br><br>
  31. <input type="submit" name="enviar" value="Enviar Boletin" class="form">
  32. </form>
  33.  
  34. <?php
  35. }
  36. ?>
  37.  
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines