Foros del Web » Programando para Internet » PHP »

error sistema login php mysql

Estas en el tema de error sistema login php mysql en el foro de PHP en Foros del Web. Amigos disculpen venego a pedirles ayudaaa jeje tengo este codigo entrar.php Código PHP: // Conectar a la base de datos mysql_connect  ( $dbhost ,  $dbusername ,  $dbuserpass ); mysql_select_db ( $dbname ...
  #1 (permalink)  
Antiguo 20/05/2011, 17:14
 
Fecha de Ingreso: mayo-2011
Mensajes: 78
Antigüedad: 13 años
Puntos: 1
error sistema login php mysql

Amigos disculpen venego a pedirles ayudaaa jeje

tengo este codigo entrar.php
Código PHP:
// Conectar a la base de datos
mysql_connect ($dbhost$dbusername$dbuserpass);
mysql_select_db($dbname) or die('No se puede seleccionar la base de datos');

if (
$_POST['username']) {
//Comprobacion del envio del nombre de usuario y password
$username=$_POST['username'];
$password=$_POST['password'];
if (
$password==NULL) {
echo 
"La password no fue enviada";
}else{
$query mysql_query("SELECT username,password FROM usuarios WHERE username = '$username'") or die(mysql_error());
$data mysql_fetch_array($query);
if(
$data['password'] != $password) {
echo 
"Login incorrecto";
}else{
$query mysql_query("SELECT username,password FROM usuarios WHERE username = '$username'") or die(mysql_error());
$row mysql_fetch_array($query);
$_SESSION["s_username"] = $row['username'];
$_SESSION["logeado"] = "SI";
echo (
"Bienvenido <strong>".$_SESSION['s_username']." </strong> ya puedes acceder a la seccion de ".'<a href="members.php">Miembros</a>'."");
}
}
}
?> 
ese es el original para un login en el cual funciona perfectamente.

ahora el problema es que lo modifique

Código PHP:
<?
// Configura los datos de tu cuenta
include('config.php');

session_start();

// Conectar a la base de datos
mysql_connect ($dbhost$dbusername$dbuserpass);
mysql_select_db($dbname) or die('No se puede seleccionar la base de datos');

if (
$_POST['clientes']) {
//Comprobacion del envio del nombre de usuario y password
$username=$_POST['txtNombre'];
$password=$_POST['pwdContraseña'];
if (
$password==NULL) {
echo 
"La password no fue enviada";
}else{
$query mysql_query("SELECT usuario_c,contraseñas_c FROM clientes WHERE txtNombre = '$username'") or die(mysql_error());
$data mysql_fetch_array($query);
if(
$data['pwdContraseña'] != $password) {
echo 
"Login incorrecto";
}else{
$query mysql_query("SELECT usuario_c,contraseñas_c FROM clientes WHERE txtNombre = '$username'") or die(mysql_error());
$row mysql_fetch_array($query);
$_SESSION["s_username"] = $row['txtNombre'];
$_SESSION["logeado"] = "SI";
echo (
"Bienvenido <strong>".$_SESSION['s_username']." </strong> ya puedes acceder a la seccion de ".'<a href="members.php">Miembros</a>'."");
}
}
}
?>
para un login distinto (base de datos esta bien configurada)
y me deberia mostrar bienvenido, user (el original lo muestra) pero sin embargo este no. donde puede estar el error ya que me muestra la pagina vacia no marca errores ni nada.
Muchas gracias espero vuestra ayuda! saludos.

Notas: codigo de login.php
Código PHP:
<form name"FormularioIngreso"

            
method "POST"
            
action "entrar.php"
            
onSubmit "return validoform (this)">
  <
p>
  <
font color="purple" size="7">
  <
div align="center"><bFormulario de Login </b></div>
  <
p></p>
  <
table align="center" border="1">
    <
tr>
      <
td><p>
          <
font color="#FF3399" size ="4">
          <
div align="left">Nombre</div>
        </
font></td>
      <
td><input type ="text" name"txtNombre"
                        
maxlength "20"
                        
size "20"
                        
value ""></td>
    </
tr>
    <
tr>
      <
td><p>
          <
font color="#FF3399" size ="4">
          <
div align="left">Contraseña</div>
        </
font></td>
      <
td><input name="pwdContrase&ntilde;a" type="password" value="" size="20"></td>
    </
tr>
    <
tr>
      <
td></td>
      <
td><center>
          <
input class="botones" type "submit" name "btnEnviar"
                    
value"Enviar">
          <
img src="mail_send.png" width="23" height="23" align="absbottom">
      </
center></td>
    </
tr>
  </
table>
  </
font>
</
form
Base de datos:
Código:
CREATE TABLE `clientes` (
  `id_Cliente` bigint(100) NOT NULL auto_increment,
  `nombre_c` varchar(100) NOT NULL,
  `apellido_c` varchar(100) NOT NULL,
  `email_c` varchar(100) NOT NULL,
  `usuario_c` varchar(100) NOT NULL,
  `contraseña_c` varchar(100) NOT NULL,
  `categoria_cliente` varchar(100) NOT NULL,
  PRIMARY KEY  (`id_Cliente`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
por si las dudas.
  #2 (permalink)  
Antiguo 20/05/2011, 17:41
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: error sistema login php mysql

Hola. He visto muchos comentarios similares al tuyo en el que no saben donde se encuentra el error y la página sale vacía.

Entiende que aunque el código sea correcto los datos de tu BD o que estés introduciendo no lo sabemos, por lo que añadir la tabla y los códigos anteriores y el html no sirven de mucha ayuda.

Un consejo muy muy simple:
Haz trazas para saber donde tú código ha parado de ejecutarse o por donde no ha entrado.

En el código dentro de los if y los else pon un echo y un valor (númerico ordenado si eso te ayuda)

Así ves por donde va pasando. Cuando no entre en el que debe ya sabes donde está el error. Es un sistema tonto, pero siempre funciona.

Por cierto... veo un input text name="pwdContrase&ntilde;a" y después un $_POST['pwdContraseña'] yo comprobaría eso de poner un ntilde dentro del name..... Con poner otro nombre que no lleve una Ñ tienes.
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #3 (permalink)  
Antiguo 20/05/2011, 17:48
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 8 meses
Puntos: 105
Respuesta: error sistema login php mysql

Holas,

En el codigo que usas:

Código PHP:
Ver original
  1. <?
  2. // Configura los datos de tu cuenta
  3. include('config.php');
  4.  

la funcion session_start(), debe de estar al inicio antes de su include; luego tienes una variable $_POST['clientes'], que no veo donde lo inicias, es como que no existe y por eso nunca va ha entrar dentro del if. Luego tambien tienes el nombre de una variable $_POST['pwdContraseña'], donde tienes un la letra ñ, no si eso es correcto, pero mejor usa nombres mas faciles y estandares, por ejemplo pwd para contraseña y nom para txtNombre.

Revisa bien eso del if($_POST['clientes']), no veo donde lo inicias.

Saludos
Gildus
__________________
.: Gildus :.

Etiquetas: login, mysql, sistema
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:02.