if($this->Database === FALSE) { die('Fejl i oprettelse af forbindelse til SQL databasen.<br />'. mysql_error()); }
$db_selected = mysql_select_db($sDatabase, $this->Database); if (!$db_selected) { die ('Kan ikke vælge database : ' . mysql_error()); }
}
function Query($sQuery) { $this->rQueryResult = mysql_query($sQuery, $this->Database); if($this->rQueryResult === FALSE) { die('Fejl i Query.<br />'. mysql_error()."<br />".$sQuery); } }
function Fetch() { return mysql_fetch_assoc($this->rQueryResult); }
}
Når du så opretter dit objekt, giver du db, username, password og server med som paramter. Så opretter den forbindelsen til serveren. Når den er oprettet, kan du kalde din Query funktion.
Den måde som du har lavet det på, skal man lave en parameter på db_connect der hedder $sql, eller også skal du lave en funktion du kalder inden der hedder SetSQL og som sætter sql varialben.
Personlig synes jeg dog at det er en sammenblanding af de forskellige begreber, når du inkluder et SQL-kald i et metode-kald som (ud fra navnet at dømme) primært har til formål at forbinde til databasen. SQL-kaldet kommer normalt *efter* at der er forbundet til databasen.
Der er også en problemstilling omkring det at forbinde til databasen for hvert eneste SQL-kald - det koster simpelthen tid og performance; Man kan sagtens bruge en åben connection til at foretage mere end et SQL-kald:
Forbind til database. SQL-kald nr. 1. SQL-kald nr. 2. SQL-kald nr. 3. Luk forbindelse til database.
Dette er normalt mere effektivt end:
Forbind til database. SQL-kald nr. 1. Luk forbindelse til database. Forbind til database. SQL-kald nr. 2. Luk forbindelse til database. Forbind til database. SQL-kald nr. 3. Luk forbindelse til database.
Synes godt om
Slettet bruger
09. maj 2006 - 19:06#6
Jeg fik rettet det på anden vis, men tak for hjælpen, hvis i smider svar kan i begge få point.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.