Goedemiddag,
Sinds deze week ben ik bezig met OOP. Naar mijn idee gaat het prima, maar ik wil het graag door deskundigen laten controleren.
Ik heb geprobeerd een klassiek loginsysteem naar OOP te vertalen door overnemen, afkijken en prutsen ;).
Kunnen jullie mij vertellen waarom dit goed of fout is?
index.php
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
require('classes/class.login.php');
$loginsystem = new main("localhost","root","","login");
$loginsystem->loginnow();
}
?>
<html>
<head>
<title>login</title>
</head>
<body>
<ul>
<form class="user" method="post" action="index.php">
<li>Naam: <input class="user" type="text" size="10" maxlength="40" name="gebruikersnaam"></li>
<li>Wachtwoord: <input class="user" type="password" size="10" maxlength="10" name="wachtwoord"></li>
<input class="submit_user" type="submit" value="Inloggen">
</form>
</ul>
</body>
</html>
class.login.php
<?php
class main {
private $host;
private $username;
private $password;
private $database;
public function __construct($host, $username, $password, $database) {
$this->host = $host;
$this->username= $username;
$this->password= $password;
$this->database= $database;
$this->connect();
}
private function connect() {
mysql_connect($this->host, $this->username, $this->password);
mysql_select_db($this->database);
}
public function loginnow() {
$result = mysql_query("SELECT gebruikerid FROM gebruikers WHERE gebruikersnaam='" . mysql_real_escape_string($_POST['gebruikersnaam']) . "' AND wachtwoord='" . mysql_real_escape_string($_POST['wachtwoord']) . "'");
if (mysql_num_rows($result) > 0) {
echo "Succesvol ingelogd.";
$_SESSION['gebruikersnaam'] = $gebruikersnaam;
}
else {
echo "Vul gebruikersnaam / wachtwoord in.";
}
}
}
?>
4.733 views