Ich bin mir sicher, was ich derzeit nicht optimal bin, aber ich würde gerne einige Meinungen darüber hören, wie Sie alle db-Abfragen in einer Webanwendung einschließlich behandeln die VerbindungszeichenfolgeWas ist der beste Ansatz für die Behandlung von db-Abfragen
Im Moment habe ich ein classes
Verzeichnis, das eine Datei für jede Klasse hat, und ich habe ein anderes Verzeichnis namens db
, die ein conn.php
enthält, die die Verbindungszeichenfolge und die anderen Dateien auf das db
Verzeichnis classes
Verzeichnis hat, sind wie in dem , eine für jede Klasse, aber um die mysql-Abfragen zu behandeln.
Also im Grunde habe ich alle db Abfragen pro Klasse in einer Datei und wenn ich etwas aus der Klasse Datei abfragen müssen, rufe ich die Funktion auf der db-Datei
ich jede db-Datei in der entsprechenden db-Datei enthalten Zum Beispiel in der user.class.php
Datei finden Sie include('db/user.db.php')
.
Außerdem schließe ich die Datei conn.php
in jede db-Datei ein.
user.class.php
:
include('db/user.db.php');
class User {
public $fname;
public $userid;
function __construct($userid) {
$this->user_id = $userid;
$this->fname = DB_GetFirstName($userid);
}
}
user.db.php
:
include('conn.php');
function DB_GetFirstName($userid) {
$result = mysql_fetch_array(mysql_query("SELECT USR_FName FROM users WHERE USR_ID = '$userid'"));
return $result[0];
}
conn.php
:
$conn = mysql_connect("localhost", "user", "pass");
mysql_select_db("dbname", $conn);
Wie geht es Ihnen?
Sounds okay für mich. Sie trennen den Db-Zugriff von Ihren Domänenklassen. Wie stellst du das zusammen? Können Sie einige Auszüge aus Ihren Benutzer- und UserDb-Klassen anzeigen? – Gordon
Einige Schnipsel hinzugefügt, es sieht nicht zu elegant für mich aus. Mir wurde auch gesagt, dass ich eine Verbindung zur Datenbank für jede Abfrage öffnen sollte, warum ist das so? –