inlog systeem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Nicky de maeyer

nicky de maeyer

18/09/2017 20:31:25
Quote Anchor link
Beste mensen.

Ik ben bezig met een inlog systeem voor een website te maken voor me zelf.
aangezien deze op een eigen server gepost wordt en niet beschikbaar gaat zijn voor de buiten wereld gaat het me niet echt om de veiligheid.
zelf ben ik niet zo bekend in php maar we leren graag bij zo dus wie kan me helpen.

in de database zit 1 login in. nu het formulier stuurt door naar de verwerking van de login. maar ik krijg een fout die ik niet echt versta.

fout:

Fatal error: Uncaught Error: Call to undefined function mysql_real_escape_string() in /storage/ssd4/194/2951194/public_html/procces.php:8 Stack trace: #0 {main} thrown in /storage/ssd4/194/2951194/public_html/procces.php on line 8

html:

<html>
<head>
<title>Pi Home Life System V1.002</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>

<div id="form">
<form action="procces.php" method="post">

<b>Username</b><br/>
<input type="text" id="username" name="username" /><br/>
<b>Password</b><br/>
<input type="password" id="password" name="password" /><br/>
<input type="submit" id="btn" value="Login" />
</form>
</div>
</body>
</html>

php verwerking:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
        $username
= $_POST['username'];
        $password = $_POST['password'];
        
        
        $username = stripcslashes($username);
        $password = stripcslashes($password);
        $username = mysql_real_escape_string($username);
        $password = mysql_real_escape_string($password);
        
        mysql_connect("localhost", "*****", "*****" );
        mysql_select_db("login");
        
        $result = mysql_query("select * from user where username = '$username' and password = '$password'" )
                                                or die("failed to quiry database" .mysql_error());
                                                
        $row = mysql_fetch_array($result);
            if($row['username'] == $username && $row['password'] == $password ) {
                echo "login succes welcom " .$row['username'];
        }
else { echo"failed to login";
    }

        
?>
 
PHP hulp

PHP hulp

30/10/2020 23:32:31
 
Ben van Velzen

Ben van Velzen

18/09/2017 20:38:18
Quote Anchor link
Begin eerst eens met het weghalen van stripslashes. Dit heb je nergens voor nodig.
Voor de rest, verdiep je in mysqli of PDO. mysql functies zijn uit PHP gehaald.
Daarnaast is het verstandig om je "password" veld te hernoemen, gezien dit een gereserveerd woord is.
Gewijzigd op 18/09/2017 20:39:46 door Ben van Velzen
 
- Ariën -
Beheerder

- Ariën -

18/09/2017 21:32:24
Quote Anchor link
En sla je passwoorden ook op met password_hash en controleer ze met password_verify
 
Frank Nietbelangrijk

Frank Nietbelangrijk

19/09/2017 18:10:58
Quote Anchor link
Hoe kun je nu beginnen met je met het uitspugen van HTML als je nog niet weet wat je applicatie moet gaan doen? Zet die HTML nou eens onderin en plaats enkel echo $eenVariable; tussen de html.
Gewijzigd op 21/09/2017 09:22:34 door Frank Nietbelangrijk
 
Thomas van den Heuvel

Thomas van den Heuvel

19/09/2017 23:53:01
Quote Anchor link
Call to undefined function mysql_real_escape_string()
=
de functie mysql_real_escape_string() bestaat niet.

mysql_* functies zijn al een tijdje in de ban. Vanaf PHP versie 5.5.0 zijn deze functies deprecated en vanaf versie 7.0.0 zijn ze in het geheel verwijderd. Vermoeden: je gebruikt PHP 7.0.0+?

Gebruik mysqli-functies of -methoden of gebruik PDO voor communicatie met je MySQL-database.

Echo ook geen queries op je scherm als deze mislukken. Althans niet in een productie-omgeving. Het afbreken van de opbouw van je HTML-document is ook niet zo'n strak plan.
Gewijzigd op 19/09/2017 23:54:20 door Thomas van den Heuvel
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.