Avatar billede loevstroem Nybegynder
23. februar 2008 - 00:06 Der er 3 kommentarer

Returnering af adskillige database columns

Hej Eksperter.

Jeg er forholdsvis ny til objekt orienteret PHP, og er i denne forbindelse igang med at udvikle en "wrapper" til mine database objekter.
I denne forbindelse er jeg stødt på et problem idet at jeg skal hente flere kolonner fra databasen.

Hvad er den mest hensigtsmæssige at gøre dette på? Umiddelbart kan jeg nemt hente én kolonne af gangen og blot returnere denne, men i såfald kan det hurtige blive til mange database forespørgsler.

Her kan I se mit eksempel på hvad jeg har prøvet:

$information = $user->user_get_informations( "id, email, navn", "$email" );



    public function user_get_informations( $type, $user_email ) {
   
        $user_informations = $this->get_records( "$columns", "WHERE email = '" . $user_email . "'" );
       
        return $user_informations;

    }
   
    function get_records( $columns, $prop ) {

        $sql = "SELECT " . $columns . " FROM " . $this->table_name . " " . $prop;
        $res = mysql_query( $sql ) or die( mysql_error() . " - " . $sql );

        $rows = array();
       
        while( $row = mysql_fetch_array( $res ) ) {
           
            $rows[] = $row;
        }
       
        return $rows;

   
    }


// $sql printes som: SELECT id, email, navn FROM usergroup WHERE email = 'kristian@loevstroem.dk
Avatar billede nielle Nybegynder
23. februar 2008 - 09:08 #1
Din nuværende løsning er ok. Dog vil jeg anbefale at du ændre kaldet til mysql_fetch_array() til at bruge mysql_fetch_assoc() i stedet.
Avatar billede nielle Nybegynder
03. marts 2008 - 17:41 #2
Hvad med noget respons?
Avatar billede nielle Nybegynder
11. marts 2008 - 06:54 #3
??
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