Foros del Web » Programando para Internet » PHP »

problemas con login.php

Estas en el tema de problemas con login.php en el foro de PHP en Foros del Web. hola, he estado haciendo un login.php con cookies, y ayudas pero, hemos llegado a un momento que me da error en la línea 14. os ...
  #1 (permalink)  
Antiguo 29/08/2003, 13:08
BLACK RIVER
Invitado
 
Mensajes: n/a
Puntos:
problemas con login.php

hola, he estado haciendo un login.php con cookies, y ayudas pero, hemos llegado a un momento que me da error en la línea 14.

os pogno el código:
Código PHP:
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<? if (isset($_COOKIE["login"]) || $_COOKIE["login"]!=""){  ?>
<? 
require ('conx.php');
$sql="SELECT * FROM users";
$consulta mysql_query($sql) or die("Error de la consulta $sql .<br>MySQL dice : ".mysql_error());

$cookie=$_COOKIE['login'];
while(
$row=mysql_fetch_array($consulta){
if(
$row['id']==$cookie){ ?>
<div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Bienvenido 
  </strong></font></font><b><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo "$re[nick]"?></font></b> 
  <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> <a href="http://www.cmblackriver.metropoliglobal.com/perfil.php?id=<? echo $re['id']; ?>"><img src="../images/mini_perfil.gif" width="12" height="12" border="0"></a> 
  <a href="http://www.cmblackriver.metropoliglobal.com/perfil.php?id=<? echo "$re[id]"?>">Tu 
  Perfil</a><br>
  <?php 
require ('conx.php');
$orden "Select * From users";
$accion mysql_query($orden,$con); 
$numero mysql_num_rows($accion); 
echo 
$numero;
mysql_close($con);

?>
  registrados</font> <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> </font><font face="Verdana, Arial, Helvetica, sans-serif"><font size="2"><a href="http://www.cmblackriver.metropoliglobal.com/logout.php"><img src="../images/mini_salir.gif" width="12" height="12" border="0"></a></font></font> 
  <a href="logout.php"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">salir</font></a> 
  <? ?>
<? 
}else{ ?>
  <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"></font></div>
<table width="100%" height="82" border="0">
  <tr>
    <td valign="top"><form name="form" method="post" action="login.php">
        <table width="100%" border="0">
          <tr> 
            <td width="5%"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Nick</strong></font></td>
            <td width="95%"><input name="nick" type="text" id="nick" size="8" class="texto"></td>
          </tr>
          <tr> 
            <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Pass</strong></font></td>
            <td><input name="pass" type="password" id="pass" size="8" class="texto"></td>
          </tr>
          <tr> 
            <td colspan="2"><div align="left">
                <input type="submit" name="Submit" value="Login" class="boton">
              </div></td>
          </tr>
        </table>
      </form></td>
  </tr>
</table>
<div align="center"><a href="reg.php"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><img src="../images/mini_registrar.gif" width="12" height="12" border="0"> 
  Registrarse</font></a> 
  <? require ('conx.php'); ?>
  <? 
$sql 
"select * from users";
$result mysql_query($sql,$con) or die("Error de la consulta $sql .<br>MySQL dice : ".mysql_error());
$row mysql_fetch_array($result);
if (
$row["nick"]==$nick AND $row["pass"]==$pass){
                echo 
"<p align='center'><font color='#FFCC00'><strong>abriendo.....</strong></font></p>";
echo <<<HTML
<form action="cookie.php" method="post" name="formulario">
   <input name="error" type="hidden" value="$nick">
   <input name="pass" type="hidden" value="$pass">
   </form>
HTML;
?>
  <script language="JavaScript">
document.formulario.submit();</script>
  <script language="JavaScript">
    function cambia(){
    window.location.href = 'cookie.php';
}
    setTimeout("cambia()",150 </script>
  <? }else{        }


mysql_free_result($result);
mysql_close($con);
?>
</div>
</body>
</html>
<? ?><? ?>
a ver si véis el problema. el login lo hacía bien, pero al agregar las cookies para que sólo muestre al usuario logueado, la he estropeado.

a ver si hay solución
  #2 (permalink)  
Antiguo 29/08/2003, 19:24
Avatar de sdf23  
Fecha de Ingreso: diciembre-2002
Mensajes: 297
Antigüedad: 21 años, 4 meses
Puntos: 0
haces muchos require mejor inserta un solo include ademas esto no puede ser:
Código PHP:
$cookie=$_COOKIE['login'];
while(
$row=mysql_fetch_array($consulta){
if(
$row['id']==$cookie){ 
o tiene ni pies ni cabeza ademas cuando los lees debes leerlos con $row['array'] pues estas manejando $row nunca $re( de donde lo sacas)

otra parte :
Código PHP:
$sql "select * from users";
$result mysql_query($sql,$con) or die("Error de la consulta $sql .<br>MySQL dice : ".mysql_error());
$row mysql_fetch_array($result);
if (
$row["nick"]==$nick AND $row["pass"]==$pass
seleccionas a todos los user por que mejor no seleccionas al usuario y ves si coinciden las passwords y creas la cookie:
mejor me dejo de explicacion haber que tal queda:

Código PHP:
<?
    ob_start
();//control buffer
    
include 'conx.php';
?>
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<? if (isset($_COOKIE["login"]) 
{  
    
$consulta mysql_query("SELECT * FROM users WHERE nick=".$_COOKIE['login']."'") or die("Error de la consulta $sql .<br>MySQL dice : ".mysql_error());
    
    while(
$row=mysql_fetch_array($consulta)
    {
    
?>
<div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Bienvenido
  </strong></font></font><b><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $re['nick']; ?></font></b>
  <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> <a href="http://www.cmblackriver.metropoliglobal.com/perfil.php?id=<? echo $re['id']; ?>"><img src="../images/mini_perfil.gif" width="12" height="12" border="0"></a>
  <a href="http://www.cmblackriver.metropoliglobal.com/perfil.php?id=<? echo $row['id']; ?>">Tu
  Perfil</a><br>
<?
$orden 
"SELECT COUNT(*) FROM users";
$cuantos mysql_result($orden,0);
echo 
$cuantos;

?>
  registrados</font> <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> </font><font face="Verdana, Arial, Helvetica, sans-serif"><font size="2"><a href="http://www.cmblackriver.metropoliglobal.com/logout.php"><img src="../images/mini_salir.gif" width="12" height="12" border="0"></a></font></font>
  <a href="logout.php"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">salir</font></a>
<?
 
// while
// if

if($_POST['loginame'])
{
    
$query mysql_query("SELECT * FROM users WHERE nick='".$_POST['userN']."'");
    
$row mysql_fetch_array($query);
    
$countN mysql_num_rows($query);
    if(
$countN 1)
    {
        echo 
"no existe";
    }
    else
    {
        if(
$rowN['pass'] == $_POST['passN'])
        {
            
setcookie("login",$rowN['nick'],time()+(60*60*24));
            
setcookie("pass",$rowN['pass'],time()+(60*60*24));
            
header("Location ".$_SERVER['PHP_SELF']);
        }
        else
        {
            echo 
"La password no coincide";
        }
    }

}
//if

else
?>
  <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"></font></div>
<table width="100%" height="82" border="0">
  <tr>
    <td valign="top"><form name="form" method="post" action="login.php">
        <table width="100%" border="0">
          <tr>
            <td width="5%"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Nick</strong></font></td>
            <td width="95%"><input name="userN" type="text" id="nickN" size="8" class="texto"></td>
          </tr>
          <tr>
            <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Pass</strong></font></td>
            <td><input name="passN" type="password" id="passN" size="8" class="texto"></td>
          </tr>
          <tr>
            <td colspan="2"><div align="left">
                <input name="loginame" type="submit" class="boton" id="loginame" value="Login">
              </div></td>
          </tr>
        </table>
      </form></td>
  </tr>
</table>
<div align="center"><a href="reg.php"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><img src="../images/mini_registrar.gif" width="12" height="12" border="0">
  Registrarse</font></a>



</div>
</body>
</html>
<? 

ob_end_flush(); //control buffer
?>
no lo he probado haber que tal jala toma en cuenta que lo hice en 10 minutos
__________________

la vida es bella cuando no es culera
  #3 (permalink)  
Antiguo 30/08/2003, 03:59
BLACK RIVER
Invitado
 
Mensajes: n/a
Puntos:
Parse error: parse error in /home/cmblackriver/htdocs/login.php on line 13

nada, siempre pasa lomismo
  #4 (permalink)  
Antiguo 30/08/2003, 12:31
Avatar de sdf23  
Fecha de Ingreso: diciembre-2002
Mensajes: 297
Antigüedad: 21 años, 4 meses
Puntos: 0
shit! me faltaba un ) por el isset aqui te va el codigo debe funcionar:

Código PHP:
<?
    ob_start
();//control buffer
    
include 'conx.php';
?>
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<? if (isset($_COOKIE["login"])) 
{  
    
$consulta mysql_query("SELECT * FROM users WHERE nick=".$_COOKIE['login']."'") or die("Error de la consulta $sql .<br>MySQL dice : ".mysql_error());
    
    while(
$row=mysql_fetch_array($consulta)
    {
    
?>
<div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Bienvenido
  </strong></font></font><b><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $re['nick']; ?></font></b>
  <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> <a href="http://www.cmblackriver.metropoliglobal.com/perfil.php?id=<? echo $re['id']; ?>"><img src="../images/mini_perfil.gif" width="12" height="12" border="0"></a>
  <a href="http://www.cmblackriver.metropoliglobal.com/perfil.php?id=<? echo $row['id']; ?>">Tu
  Perfil</a><br>
<?
$orden 
"SELECT COUNT(*) FROM users";
$cuantos mysql_result($orden,0);
echo 
$cuantos;

?>
  registrados</font> <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> </font><font face="Verdana, Arial, Helvetica, sans-serif"><font size="2"><a href="http://www.cmblackriver.metropoliglobal.com/logout.php"><img src="../images/mini_salir.gif" width="12" height="12" border="0"></a></font></font>
  <a href="logout.php"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">salir</font></a>
<?
 
// while
// if

if($_POST['loginame'])
{
    
$query mysql_query("SELECT * FROM users WHERE nick='".$_POST['userN']."'");
    
$row mysql_fetch_array($query);
    
$countN mysql_num_rows($query);
    if(
$countN 1)
    {
        echo 
"no existe";
    }
    else
    {
        if(
$rowN['pass'] == $_POST['passN'])
        {
            
setcookie("login",$rowN['nick'],time()+(60*60*24));
            
setcookie("pass",$rowN['pass'],time()+(60*60*24));
            
header("Location ".$_SERVER['PHP_SELF']);
        }
        else
        {
            echo 
"La password no coincide";
        }
    }

}
//if

else
?>
  <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"></font></div>
<table width="100%" height="82" border="0">
  <tr>
    <td valign="top"><form name="form" method="post" action="login.php">
        <table width="100%" border="0">
          <tr>
            <td width="5%"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Nick</strong></font></td>
            <td width="95%"><input name="userN" type="text" id="nickN" size="8" class="texto"></td>
          </tr>
          <tr>
            <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Pass</strong></font></td>
            <td><input name="passN" type="password" id="passN" size="8" class="texto"></td>
          </tr>
          <tr>
            <td colspan="2"><div align="left">
                <input name="loginame" type="submit" class="boton" id="loginame" value="Login">
              </div></td>
          </tr>
        </table>
      </form></td>
  </tr>
</table>
<div align="center"><a href="reg.php"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><img src="../images/mini_registrar.gif" width="12" height="12" border="0">
  Registrarse</font></a>



</div>
</body>
</html>
<? 

ob_end_flush(); //control buffer
?>
__________________

la vida es bella cuando no es culera
  #5 (permalink)  
Antiguo 30/08/2003, 13:05
BLACK RIVER
Invitado
 
Mensajes: n/a
Puntos:
Parse error: parse error, unexpected '{' in /mnt/filer1/web/cmblackriver/htdocs/login.php on line 16


na, que yo toy gafau definitivamente
  #6 (permalink)  
Antiguo 30/08/2003, 17:38
Avatar de sdf23  
Fecha de Ingreso: diciembre-2002
Mensajes: 297
Antigüedad: 21 años, 4 meses
Puntos: 0
shit ahora si
Código PHP:
<?
    ob_start
();//control buffer
    
include 'conx.php';
?>
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<? if (isset($_COOKIE["login"]))
{
    
$consulta mysql_query("SELECT * FROM users WHERE nick=".$_COOKIE['login']."'") or die("Error de la consulta $sql .<br>MySQL dice : ".mysql_error());

    while(
$row=mysql_fetch_array($consulta))
    {
    
?>
<div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Bienvenido
  </strong></font></font><b><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $re['nick']; ?></font></b>
  <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> <a href="http://www.cmblackriver.metropoliglobal.com/perfil.php?id=<? echo $re['id']; ?>"><img src="../images/mini_perfil.gif" width="12" height="12" border="0"></a>
  <a href="http://www.cmblackriver.metropoliglobal.com/perfil.php?id=<? echo $row['id']; ?>">Tu
  Perfil</a><br>
<?
$orden 
"SELECT COUNT(*) FROM users";
$cuantos mysql_result($orden,0);
echo 
$cuantos;

?>
  registrados</font> <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> </font><font face="Verdana, Arial, Helvetica, sans-serif"><font size="2"><a href="http://www.cmblackriver.metropoliglobal.com/logout.php"><img src="../images/mini_salir.gif" width="12" height="12" border="0"></a></font></font>
  <a href="logout.php"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">salir</font></a>
<?
 
// while
// if

if($_POST['loginame'])
{
    
$query mysql_query("SELECT * FROM users WHERE nick='".$_POST['userN']."'");
    
$row mysql_fetch_array($query);
    
$countN mysql_num_rows($query);
    if(
$countN 1)
    {
        echo 
"no existe";
    }
    else
    {
        if(
$rowN['pass'] == $_POST['passN'])
        {
            
setcookie("login",$rowN['nick'],time()+(60*60*24));
            
setcookie("pass",$rowN['pass'],time()+(60*60*24));
            
header("Location ".$_SERVER['PHP_SELF']);
        }
        else
        {
            echo 
"La password no coincide";
        }
    }

}
//if

else
?>
  <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"></font></div>
<table width="100%" height="82" border="0">
  <tr>
    <td valign="top"><form name="form" method="post" action="login.php">
        <table width="100%" border="0">
          <tr>
            <td width="5%"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Nick</strong></font></td>
            <td width="95%"><input name="userN" type="text" id="nickN" size="8" class="texto"></td>
          </tr>
          <tr>
            <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Pass</strong></font></td>
            <td><input name="passN" type="password" id="passN" size="8" class="texto"></td>
          </tr>
          <tr>
            <td colspan="2"><div align="left">
                <input name="loginame" type="submit" class="boton" id="loginame" value="Login">
              </div></td>
          </tr>
        </table>
      </form></td>
  </tr>
</table>
<div align="center"><a href="reg.php"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><img src="../images/mini_registrar.gif" width="12" height="12" border="0">
  Registrarse</font></a>



</div>
</body>
</html>
<?
}
ob_end_flush(); //control buffer
?>
__________________

la vida es bella cuando no es culera
  #7 (permalink)  
Antiguo 31/08/2003, 01:27
BLACK RIVER
Invitado
 
Mensajes: n/a
Puntos:
Hola, ahora no me daba ningun error, pero como me ponías en sitios nickN y passN los he cambiado por nick y pass. si está mal, los vuelvo a cambiar ya q tengo una copia de seguridad.

bueno el caso es que ahora, no conectará bien a la base de datos porque siempre me dice que la pass no coincide.

bueno a ver si sabes que puede pasar.

gracias
  #8 (permalink)  
Antiguo 31/08/2003, 13:43
Avatar de sdf23  
Fecha de Ingreso: diciembre-2002
Mensajes: 297
Antigüedad: 21 años, 4 meses
Puntos: 0
haber localiza estas lineas

if($rowN['pass'] == $_POST['passN'])
{
setcookie("login",$rowN['nick'],time()+(60*60*24));
setcookie("pass",$rowN['pass'],time()+(60*60*24));
header("Location ".$_SERVER['PHP_SELF']);
}

cambiala por

if($_POST['passN'] == $rowN['pass'])
{
setcookie("login",$rowN['nick'],time()+(60*60*24));
setcookie("pass",$rowN['pass'],time()+(60*60*24));
header("Location ".$_SERVER['PHP_SELF']);
}
__________________

la vida es bella cuando no es culera
  #9 (permalink)  
Antiguo 31/08/2003, 15:11
BLACK RIVER
Invitado
 
Mensajes: n/a
Puntos:
Parse error: parse error in /home/cmblackriver/htdocs/login.php on line 59

joooooooooooooo no lo consigo!!!
  #10 (permalink)  
Antiguo 31/08/2003, 15:54
Avatar de sdf23  
Fecha de Ingreso: diciembre-2002
Mensajes: 297
Antigüedad: 21 años, 4 meses
Puntos: 0
...
Código PHP:

<?
    ob_start
();//control buffer
    
include 'conx.php';
?>
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<? if (isset($_COOKIE["login"]))
{
    
$consulta mysql_query("SELECT * FROM users WHERE nick=".$_COOKIE['login']."'") or die("Error de la consulta $sql .<br>MySQL dice : ".mysql_error());

    while(
$row=mysql_fetch_array($consulta))
    {
    
?>
<div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Bienvenido
  </strong></font></font><b><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $re['nick']; ?></font></b>
  <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> <a href="http://www.cmblackriver.metropoliglobal.com/perfil.php?id=<? echo $re['id']; ?>"><img src="../images/mini_perfil.gif" width="12" height="12" border="0"></a>
  <a href="http://www.cmblackriver.metropoliglobal.com/perfil.php?id=<? echo $row['id']; ?>">Tu
  Perfil</a><br>
<?
$orden 
"SELECT COUNT(*) FROM users";
$cuantos mysql_result($orden,0);
echo 
$cuantos;

?>
  registrados</font> <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> </font><font face="Verdana, Arial, Helvetica, sans-serif"><font size="2"><a href="http://www.cmblackriver.metropoliglobal.com/logout.php"><img src="../images/mini_salir.gif" width="12" height="12" border="0"></a></font></font>
  <a href="logout.php"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">salir</font></a>
<?
 
// while
// if

if($_POST['loginame'])
{
    
$query mysql_query("SELECT * FROM users WHERE nick='".$_POST['userN']."'");
    
$row mysql_fetch_array($query);
    
$countN mysql_num_rows($query);
    if(
$countN 1)
    {
        echo 
"no existe";
    }
    else
    {
        if(
$_POST['passN'] == $rowN['pass'])
        {
            
setcookie("login",$rowN['nick'],time()+(60*60*24));
            
setcookie("pass",$rowN['pass'],time()+(60*60*24));
            
header("Location ".$_SERVER['PHP_SELF']);
        }
        else
        {
            echo 
"La password no coincide";
        }
    }

}
//if

else
?>
  <br>
  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"></font></div>
<table width="100%" height="82" border="0">
  <tr>
    <td valign="top"><form name="form" method="post" action="login.php">
        <table width="100%" border="0">
          <tr>
            <td width="5%"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Nick</strong></font></td>
            <td width="95%"><input name="userN" type="text" id="nickN" size="8" class="texto"></td>
          </tr>
          <tr>
            <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Pass</strong></font></td>
            <td><input name="passN" type="password" id="passN" size="8" class="texto"></td>
          </tr>
          <tr>
            <td colspan="2"><div align="left">
                <input name="loginame" type="submit" class="boton" id="loginame" value="Login">
              </div></td>
          </tr>
        </table>
      </form></td>
  </tr>
</table>
<div align="center"><a href="reg.php"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><img src="../images/mini_registrar.gif" width="12" height="12" border="0">
  Registrarse</font></a>



</div>
</body>
</html>
<?
}
ob_end_flush(); //control buffer
?>
__________________

la vida es bella cuando no es culera
  #11 (permalink)  
Antiguo 01/09/2003, 00:56
BLACK RIVER
Invitado
 
Mensajes: n/a
Puntos:
a ver, funcionar parece q funciona, pero no loguea, dice q siempre la pasword no coincide :(
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 15:26.