php logowanie

Odpowiedz Nowy wątek
2017-08-06 16:30

Rejestracja: 2 lata temu

Ostatnio: 2 lata temu

0

Cześć,
mam prosty skrypt logowania i taki problem, że warunek if($row = mysqli_fetch_assoc($result)) za każdym razem wynosi false, czyli wykonuje sie: "echo "Your login or password is incorrect";, nawet jak login i haslo sa poprawne

index.php:

<!DOCTYPE html>
<html lang="pl">
<head>
    <meta charset="UTF-8">
    <title>Home Page</title>
    <link rel="stylesheet" href="index.css">
    <link rel="stylesheet" href="register.css">
</head>
<body>

<form class="form-contener" action="signin.php" mathod="POST">
    <input type="text" class="inputText" name="username" placeholder="Your username">
    <input type="password" class="inputText" name="pass" placeholder="Your password">
    <button type="submit" class="inputSubmit" name="login">Sign In</button>
</form>

</body>
</html>

signin.php

<?php 

$conn = new mysqli("localhost", "root", "", "register");

$username = isset($_POST['username']) ? $_POST['username'] : "";
$pass = isset($_POST['pass']) ? $_POST['pass'] : "";

$sql = "SELECT * FROM users WHERE username = '$username' AND pass = '$pass'";

$result = mysqli_query($conn, $sql);

if($row = mysqli_fetch_assoc($result)) {
    echo "You are logged";
} else {
    echo "Your login or password is incorrect";
}

o co moze chodzic? :_:

edytowany 1x, ostatnio: blur blejd, 2017-08-06 16:31

Pozostało 580 znaków

Biały Samiec
2017-08-06 20:29
Biały Samiec
0

Wpisz takie 2 linijki na początek skryptu i zobacz o co może chodzić:


<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);

...

Na pewno masz mathod zamiast 'method' w pliku html i wysyła Ci GETem zamiast Postem.

Pozostało 580 znaków

2017-08-07 20:08

Rejestracja: 5 lat temu

Ostatnio: 2 dni temu

0

A weź zawartość pliku

<?php 

$conn = new mysqli("localhost", "root", "", "register");

$username = isset($_POST['username']) ? $_POST['username'] : "";
$pass = isset($_POST['pass']) ? $_POST['pass'] : "";

$sql = "SELECT * FROM users WHERE username = '$username' AND pass = '$pass'";

$result = mysqli_query($conn, $sql);

if($row = mysqli_fetch_assoc($result)) {
    echo "You are logged";
} else {
    echo "Your login or password is incorrect";
}

Zamień na

<?php 

$conn = new mysqli("localhost", "root", "", "register");

$username =  $_POST['username'];
$pass = $_POST['pass'];

$sql = "SELECT * FROM users WHERE username = '$username' AND pass = '$pass'";

$result = mysqli_query($conn, $sql);

if($row = mysqli_fetch_assoc($result)) {
    echo "You are logged";
} else {
    echo "Your login or password is incorrect";
}

I zobacz co się będzie działo.

Pozostało 580 znaków

2017-08-07 20:15

Rejestracja: 2 lata temu

Ostatnio: 2 lata temu

0

już rozwiązane :D okazało się, że w formularzu html miałem literowke :_:

Pozostało 580 znaków

2017-08-07 20:45

Rejestracja: 4 lata temu

Ostatnio: 12 godzin temu

Lokalizacja: KWARANTANNA

0

weź se jakiś porządny ide zainstaluj ;)


Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0