• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Sprawdzicie mój kod?

Object Storage Arubacloud
0 głosów
349 wizyt
pytanie zadane 5 stycznia 2016 w PHP przez R3VIK Nowicjusz (200 p.)
edycja 5 stycznia 2016 przez R3VIK

Witam!   

Chodzi mi o 1:05:58  min filmu https://www.youtube.com/watch?v=fMJw90n8M60&feature=youtu.be&t=59m20s

Gdy chce się zalogować na podane wcześniej login i shaszowane hasło nie mogę tego dokonać...

<?php

    session_start();
    
    if ((!isset($_POST['login'])) || (!isset($_POST['haslo'])))
    {
        header('Location: index.php');
        exit();
    }

    require_once "connect.php";

    $polaczenie = @new mysqli($host, $db_user, $db_password, $db_name);
    
    if ($polaczenie->connect_errno!=0)
    {
        echo "Error: ".$polaczenie->connect_errno;
    }
    else
    {
        $login = $_POST['login'];
        $haslo = $_POST['haslo'];
        
        $login = htmlentities($login, ENT_QUOTES, "UTF-8");
    
        if ($rezultat = @$polaczenie->query(
        sprintf("SELECT * FROM qwerty WHERE user='%s'",

        mysqli_real_escape_string($polaczenie,$login))))
        {
            $ilu_userow = $rezultat->num_rows;
            if($ilu_userow>0)
            {
                $wiersz = $rezultat->fetch_assoc();
                
                if (password_verify($haslo, $wiersz['pass']))
                {
                    
                    
                    unset($_SESSION['blad']);
                    
                    $rezultat->free_result();
                    header('Location: index2.php');
                }
                else 
                {
                    $_SESSION['blad'] = '<span style="color:red">Nieprawidłowy login lub hasło!</span>';
                    header('Location: index.php');
                }
                
            } else {
                
                $_SESSION['blad'] = '<span style="color:red">Nieprawidłowy login lub hasło!</span>';
                header('Location: index.php');
                
            }
            
        }
        
        $polaczenie->close();
    }
    
?>

 

2 odpowiedzi

+3 głosów
odpowiedź 5 stycznia 2016 przez SyntaxError Pasjonat (17,170 p.)
Chowaj małpe przed efikiem. xd
komentarz 5 stycznia 2016 przez R3VIK Nowicjusz (200 p.)

Nie bardzo rozumiem co mam poprawić frown

komentarz 5 stycznia 2016 przez SyntaxError Pasjonat (17,170 p.)
Polecam Ci:

- Sprawdzić czy znajduje Ci wgl. usera w bazie i jego zahashowane hasło.

- Sprawdzić czy przechodzi password_verify, a jak nie to zrób jeszcze raz hasha, może coś uciąłeś.

- Wywalić małpy z kodu.
komentarz 5 stycznia 2016 przez R3VIK Nowicjusz (200 p.)
zahashowalem hasło jeszcze raz.. User istnieje,nałpy wywalone...Gdy próbuje się zalogować na te dane to przywraca mnie do strony logwoania (odświeża się karta poprostu a nie następuje przekierowanie)
+1 głos
odpowiedź 5 stycznia 2016 przez kantekand Obywatel (1,180 p.)
$wiersz = $rezultat->fetch_assoc();

po tym daj print_r($wiersz);

sprawdzisz jaki jest wynik z zapytania sql i zweryfikuj czy nie ma czasem błędu w samym zapytaniu
komentarz 6 stycznia 2016 przez R3VIK Nowicjusz (200 p.)
Ale wgl nie przekierowuje!! W gra.php jest strona zrobiona i wgl
komentarz 6 stycznia 2016 przez R3VIK Nowicjusz (200 p.)

Póki co mam tylko jedno...Ale jest to po to aby nikt nie zalogowany nie wszedł na gra.php....Ale gdy to usune to loguje się normalnie

<?
session_start();

if (!isset($_SESSION['zalogowany']))  
{ 
 header('Location: index.php'); 
 exit(); 

}

?>

 

komentarz 6 stycznia 2016 przez kantekand Obywatel (1,180 p.)
if (password_verify($haslo, $wiersz['pass']))
 {
  unset($_SESSION['blad']);
 $rezultat->free_result();

 // !!! tu ustaw tą zmienną
 $_SESSION['zalogowany'] = true; //czy coś
 header('Location: gra.php');
}
komentarz 6 stycznia 2016 przez kantekand Obywatel (1,180 p.)
inaczej robisz poprawne logowanie -> przekierowanie do gry bez zmiennej sesyjnej -> przekierowanie do index.php
komentarz 6 stycznia 2016 przez efiku Szeryf (75,160 p.)
lol kod który wkleiłeś wcześniej , zobacz na tagi , w php nie otwieramy <? tylko <?php

2 po header w tym wypadku zawsze exit, jak będziesz debugował sobie kiedyś, to się zdziwisz, czemu mam Redirect a jestem dalej na tej samej stronie ? :>

Ja polecam zapoznać się z tym jak działa HTTP. Opisałem tutaj : https://forum.pasja-informatyki.pl/95526/pisanie-stron-obiektowo?show=96095#a96095

Pozwoli to ogarnąć requesty i obsługę ich, pisanie skryptów będzie łatwiejsze ^^

Podobne pytania

+2 głosów
4 odpowiedzi 243 wizyt
pytanie zadane 11 kwietnia 2015 w C i C++ przez Kamil_S Obywatel (1,310 p.)
0 głosów
1 odpowiedź 372 wizyt
pytanie zadane 24 czerwca 2022 w PHP przez MareczeQ Nowicjusz (190 p.)
0 głosów
1 odpowiedź 306 wizyt

92,615 zapytań

141,465 odpowiedzi

319,782 komentarzy

61,997 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...