Chris: Komplettes Projekt in OOP v2

Beitrag lesen

Hallo.

»» » »» function fetchObject($result){}
»» Hm aber die spalten heißen doch immer anders und sind unterschiedlich viel.. irgendwie blick ich nicht durch wie ich das realisieren soll..

Das ist ja kein Problem. Die üblichen assoziierenden und objektorientierten Fetch-Funktionen liefern alle Spalten, egal wieviele es sind. Dieses Array oder Objekt je Ergebnismelngenzeile hängst du an ein alle Zeilen enthaltendes Ergebnis-Array an. Derjenige, der die Datenmenge angefordert hat, weiß auch, was ihn erwartet. Ansonsten kann er immer noch durch die einzelnen Spalten "foreachen" (notfalls das Fetch-Objekt in ein Array casten).

Ich lass mir ja ungern Code vor Füße legen aber in diesem Fall wäre ich dir dankbar wenn du diese "fetchResult()" Fkt. mal hier hin postest...

Ich komm irgendwie nicht darauf klar Object 2 Array

früher hab ichs immer so gemacht:

$sql="SELECT name, email...";  
$res=mysql_query($sql);  
while($get=mysql_fetch_array($res)){  
  echo $get['name']." : ".$get['email'];  
}  
  
mysql_free_result($res); //[1]

Zu [1]: In wiefern lohnt es sich eigendlich das zu machen? Lohnt es sich dafür eine Methode zu erstellen? Die dann mit mysqli_free_result das Ergebnis löscht?

Ne weitere Frage:

Wenn ich eine Klasse habe und meine Datenbank-Klasse(db) nutzen möchte, dann hole ich mir eine Instanz so:

class beispiel{  
  private static $dbcon;  
  
  public function __construct(){  
   self::$dbcon=db::getInstance();  
  }  
}

Damit arbeiten würde ich dann so:
a)

public workWith(){  
  
  self::$dbcon->db_query($sql);  
  
}

Allerdings ginge doch auch direkt:
b)

public workWith(){  
  db::db_query($sql);  
}

Da db_query eine statische Methode ist.
Mir ist das erst später aufgefallen da ich atm zum üben eine Newsletterklasse schreibe. So versuche ich perfekt mit der db und der tools Klasse zusammen zuarbeiten.
Mit der tools-Klasse mach ich das über tools::funktionsname();.. bei der db-Klasse hole ich mir erst eine Instanz und arbeite mit dieser, statt direkt db::funktionsname();.

Lg, Chris

0 77

Komplettes Projekt in OOP v2

Chris
  • php
  1. 0
    Patrick Figel
  2. 0
    Sympathisant
    1. 0
      Chris
      1. 0
        Sympathisant
        1. 0
          Sven Rautenberg
          1. 0
            Sympathisant
      2. 1
        Sven Rautenberg
        1. 0
          dedlfix
      3. 0
        CHris
  3. 0
    Tom
    1. 0
      Chris
      1. 0
        Tom
      2. 0
        Sympathisant
        1. 0
          Tom
          1. 0
            Sven Rautenberg
            1. 0
              Tom
              1. 0
                Sympathisant
                1. 0
                  Tom
                  1. 0
                    Tom
                    1. 0
                      Sympathisant
                      1. 0
                        Tom
                        1. 0
                          dedlfix
                    2. 0
                      dedlfix
                  2. 0
                    Sympathisant
                    1. 0
                      Tom
                      1. 0
                        Sympathisant
                2. 0
                  Sven Rautenberg
                  1. 0
                    Tom
                    1. 0
                      dedlfix
                3. 0
                  dedlfix
                  1. 0
                    Sympathisant
                    1. 0
                      dedlfix
                      1. 0
                        Sympathisant
              2. 0
                dedlfix
                1. 0
                  Tom
          2. 0
            Sympathisant
        2. 0
          dedlfix
    2. 0
      dedlfix
      1. 0
        Tom
        1. 0
          dedlfix
          1. 0
            Tom
            1. 0
              dedlfix
              1. 0
                Tom
  4. 0

    PDF-Doku für OOP mit PHP5

    Tom
    1. 0
      dedlfix
      1. 0
        Tom
        1. 0
          dedlfix
  5. 0

    Und noch ein eBook für PHP OOP

    Tom
  6. 4
    dedlfix
    1. 0
      Tom
      1. 0
        dedlfix
  7. 0
    Chris
    1. 0
      dedlfix
      1. 0
        Chris
        1. 0
          Tom
          1. 0
            Chris
            1. 0
              Sympathisant
              1. 0
                Tom
        2. 0
          dedlfix
      2. 0
        Chris
        1. 0
          dedlfix
          1. 0
            Chris
            1. 0
              dedlfix
              1. 0
                Chris
                1. 1
                  dedlfix
                  1. 0
                    Chris
                    1. 0
                      dedlfix
                      1. 0
                        Chris
                        1. 0
                          dedlfix
                          1. 0
                            Chris
                            1. 0
                              Tom
                              1. 0
                                dedlfix
                            2. 0
                              dedlfix
                              1. 0
                                Chris
                                1. 0
                                  dedlfix
                                  1. 0
                                    Chris