QuezTal274589
Usuario habitual
Usuario habitual

Hola, queria incluir el código para la autentificación de usuarios, después de haber buscado por todo google lo entiendo casi todo.

Spoiler:

<html>
<head>
<style type="text/css">
body {background-color:#000000; color:#FF6600}


</style>
</head>

<body>
<?php
$name=$_POST['name'];
$password=$_POST['password'];
if (!isset($_POST['name']) && !isset ($_POST['password'])) {
?>
<h2> Esta p&aacute;gina es secreta </h2>
<form method="post" action="secretdb.php">
Username:<br>
<input type="text" name="name">
<br>
Password: <br>
<input type="password" name="password">
<br>
<input type="submit" value="Enviar informacion">
</form>
<?php
}else{
$mysql=mysql_connect("localhost","USUARIODB","PASSWORDDB");
if(!$mysql)
{
    echo "no es correcta la conexion";
}
    $selected=mysql_select_db("BASE_DE_DATOS",$mysql);
if(!$mysql)
{
    echo "error base de datos";
}
// query the database to see if there is a record which matches
    $query = "select count(*) from MITABLAwhere
              name = '$name'      and
              password = '$password'";

    $result = mysqli_query( $mysql, $query );
    if(!$result)

{
    echo "Por lo visto la cagaste";
    exit;
    }
$row=mysqli_fetch_row($result);
$count=$row[0];
if ($count > 0) {
    echo "Usuario y contraseña CORRECTOS";
}else{
echo "Usuairo o Contraseña INCORRECTOS";
}
}
?>

</body>
</html>

Me da error en la línea 44; osea en esta:

Spoiler:

   $result = mysqli_query( $mysql, $query );

No entiendo porque......

Lo cierto es que esta parte del código no la entiendo. ¿Podrían decirme que tengo que editar?

Este código es de un libro que me compre un saludo.

Avatar Image
Usuario habitual
Usuario habitual

Asi a vista rápida te sobra una i en la llamada a la funcion.

$result = mysql_query( $mysql, $query );

He visto que en el codigo esta i aparece tambien aqui:

$row=mysqli_fetch_row($result);

Tienes que eliminarlas.

QuezTal274589
Usuario habitual
Usuario habitual
Escrito originalmente por Vanadis82

Asi a vista rápida te sobra una i en la llamada a la funcion.

$result = mysql_query( $mysql, $query );

He visto que en el codigo esta i aparece tambien aqui:

$row=mysqli_fetch_row($result);

Tienes que eliminarlas.

En realidad viene asi en el libro, por eso no lo he borrado, ya que es indiferente que quite la "i" o no poruqe me sigue dando error.

Aún así gracias por la respuesta, ¿alguien sabe por que me ocurre esto?

saludos

Avatar Image
@man / @woman
@man / @woman

a) mysqli se utiliza en programación orientada a objetos, el código que posteaste no es orientado a objetos; deberías quitar las i

b) Por otro lado, en la línea $mysql=mysql_connect("localhost","USUARIODB","PASSWORDDB");

localhost debería ser el servidor ¿ lo es?

USUARIODB debería ser el nombre del usuario, y PASSWORDDB el pasw ¿ están correctos?

c) en la línea de código $query = "select count(*) from MITABLAwhere name = '$name' and password = '$password'";

entre MITABLA y where debe haber un espacio

d) está el usuario USUARIODB registrado en el administrador de bases de datos (server) y con los permisos necesarios sobre esa base de datos?

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Opciones:
Ir al subforo:
Permisos:
TU NO PUEDES Escribir nuevos temas
TU NO PUEDES Responder a los temas
TU NO PUEDES Editar tus propios mensajes
TU NO PUEDES Borrar tus propios mensajes
Temas similares
No se han encontrado temas similares