Welkom, Gast. Je bent niet ingelogd.

Queries in klassen

Alenio
Samuel L Jackson=GOD
Geplaatst op: 12 Apr 2010, 19:47
PimpCoins: 0
💸+
Bewerken Quote

Ik ben bezig met mijn weblog klasse, nou wil ik een query uitvoeren maar is het wel slim netjes om die uit te voeren in een functie binnen een klasse?

Voorbeeld:

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
<?php
class Omg
{
    private $query;
    private $result;
    private $output;

    public function __construct($query)
    {
        $this->query = $query;
    }

    public function assign()
    {
        $this->result = mysql_query($this->query) or die('OMG!');
        /*
            or die() ga ik niet gebruiken, die staat er ter illustratie!
        */
        $this->output = mysql_fetch_assoc($this->result);
    }

    public function output()
    {
        return $this->output['veld'];
    }
}

$query = new Omg('SELECT * FROM `tabel`');
echo $query->output();
?>

Iemand een suggestie?

[Laatst bewerkt door Alenio op maandag 12 april 2010, om 20:03]
Saven
admin
Geplaatst op: 12 Apr 2010, 19:52
PimpCoins: 0
💸+
Bewerken Quote

Je kan beter niet zo met queries/je DB omgaan in een class. Beter doe je ff zoeken wat het MVC pattern inhoudt Dan hou je alle logica netjes gescheiden.

En sowieso een query meegeven in een constructor? misschien in uitzonderlijke situaties, maar dit is zeker niet zo'n situatie

PS: Backquotes niet zomaar gebruiken in je queries, alleen wanneer nodig (eigenlijk zou het niet nodig moeten zijn als je juiste tabel/kolomnamen gebruikt).

Alenio
Samuel L Jackson=GOD
Geplaatst op: 12 Apr 2010, 19:58
PimpCoins: 0
💸+
Bewerken Quote

@saven:
Ik zal even kijken naar dat MVC verhaal en over die query, vergeet niet dat dit een voorbeeld is (Maar toch bedankt ).

Die backquotes gooi ik er automatisch in, overzichtelijkheid denk ik?

- Trouwens, hoe zit het met een query defineren ($this->var = mysql_query(...) in de constructor?

[Laatst bewerkt door Alenio op maandag 12 april 2010, om 20:02]
📫

Nieuw privébericht

🔥

Registreren


Login