Forum » Server-Side scripting » Login class
Hardstyle
Berichten: 225
avatar
Offline Stuur privebericht
Mensen,

Ik wil gaan werken met classes, begin net pas eigenlijk.
Dit is een login class gemaakt door mij.

Ik zit op school en kan niet testen of alles goed werkt, maar maak ik dit zo goed, en zou het kunnen werken.

class
Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
class system
{
    private 
$email "";
    private 
$password "";

    public function 
__contruct()
    {
        
$this->email     $email;
        
$this->password  $password;
    }

    public function 
login($email$password)
    {
        
$db $conn->query("SELECT * FROM Members WHERE email = '" .strtolower($this->email). "'");
        
$result $conn->fetch_object($db);

        if(empty(
$this->email))
        {
            return 
1;
        }
        if(empty(
$this->password))
        {
            return 
2;
        }
        elseif(
$conn->num_rows($db) == 0)
        {
            return 
4;
        }
        elseif(
$result->password != md5($this->password))
        {
            return 
5;
        }

    }
}


script
Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$system = new system();

switch(
$system->login($_POST['email'], $_POST['password']))
{
    case 
1:
        echo(
"Je moet wel je email invullen.");
    break;
    case 
2:
        echo(
"Je bent vergeten een wachtwoord in te vullen.");
    break;
    case 
1:
        echo(
"Deze email bestaat al.");
    break;
    case 
1:
        echo(
"Je wachtwoord komt niet overeen.");
    break;
}


Jackie
13-09-2010 15:13
Dit topic is 114 keer bekeken door 37 verschillende leden
Reacties op: "Login class"
1
RS
Berichten: 116
avatar
Offline Stuur privébericht
Wil je werken met classes, of wil je object georiënteerd werken? Daar zit namelijk nogal een verschil tussen, en dit is zeker geen OO.
$db = $conn->query("SELECT * FROM Members WHERE email = '" .strtolower($this->email). "'";
Daar ga je een foutje mee krijgen sowieso. $conn bestaat namelijk niet eens.
13-09-2010 15:17
Hardstyle
Berichten: 225
avatar
Offline Stuur privébericht
Hm ik heb een mysql connectie class gemaakt.

Moet ik dan

global $mysql;

gebruiken of wat?
13-09-2010 15:21
RS
Berichten: 116
avatar
Offline Stuur privébericht
Nee, daar kun je het beste een Singleton class voor maken lijkt me. Als je niet weet wat Singleton is, kun je dat het beste even Googelen.
Global gebruiken doen we (bijna) niet meer aan!
13-09-2010 15:33
Reageer op: "Login class"
1
Je kan niet reageren omdat je niet bent ingelogd. Inloggen of Aanmelden