Avatar billede sbay Nybegynder
03. oktober 2006 - 11:41 Der er 2 kommentarer

sql funktion på require side

Hejsa

Jeg har en hel del SQL-kald i en lille applikation jeg er ved at lave. Mit første udgangspunkt, var at ligge hvert SQL-kald i en seperat fil, og så bruge require når jeg skulle bruge data. Men kan det ikke gøres smartere ved at have alle SQL-kald i en side og så kald dem med funktionskald. Så kan jeg måske også få nogle attributter med frem og tilbage???
Avatar billede coderdk Praktikant
03. oktober 2006 - 13:02 #1
Jeg plejer at lave et objekt der håndterer alt hvad der har med en bestemt tabel at gøre (nogle gange flere tabeller hvis det er lidt avanceret).

Et eksempel:

class MyDB
{
  var $host = "localhost";
  var $user = "brugernavn";
  var $pass = "password;
  var $conn;
  function MyDB()
  {
      $this->conn = mysql_connect( $host, $user, $pass );
      if ( !$this->conn ) die( "Kunne ikke forbinde til databasen" );
  }
  function SelectDB( $dbname )
  {
      return mysql_select_db( $dbname );
  }
  function Query( $sql )
  {
      $result = mysql_query( $sql ) or die( mysql_error() );
      return $result;
  }
}

class User extends MyDB
{
    var $db = 'usertabel';
    function User()
    {
        $this->MyDB();
        $this->SelectDB($this->db);
    }
    function GetUserByName( $username )
    {
      $sql = "SELECT * FROM " . $this->db . " WHERE username = '" . mysql_escape_string( $username ) . "'";
      $qh = $this->Query( $sql );
      return mysql_fetch_assoc( $qh );
    }
}

osv... Her ville jeg smide MyDB-klassen i en separat fil, da den skal genbruges til andre klasser - Det er rart at vide at hvis man har noget med brugerne, skal man bare rette i én klasse i én fil :)

(Bemærk koden er bare for at illustrere, den er ikke testet eller noget)
Avatar billede sbay Nybegynder
14. februar 2007 - 12:54 #2
Smid et svar!
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Rambøll Management Consulting

Senior AI Engineer

Capgemini Danmark A/S

Client Partner

Riskpoint A/S (Riskpoint Solutions Limited)

IT Business Analyst