ADBo mit PHP

  1. macddict

    macddict Thread StarterMacUser Mitglied

    Mitglied seit:
    20.02.2005
    Beiträge:
    209
    Zustimmungen:
    5
    Habe ein Frage:

    Welchen Sinn hat die Verwendung eines Datenbankabstraktionsklasse wie z.B. adodb in php bei kleineren Projekten?

    Baue ein kleines CMS und frage mich ob ich sowas wohl einsetzen sollte...das CMS soll definitiv nur auf MySQL laufen.
     
    macddict, 18.11.2005
  2. timbajr

    timbajrMacUser Mitglied

    Mitglied seit:
    22.04.2005
    Beiträge:
    574
    Zustimmungen:
    26
    wenn es nur auf mysql laufen soll und du dir sowieso dann deine eigene DB-Abstraktionsschicht baust, brauchst kein adodb.
     
    timbajr, 18.11.2005
  3. macddict

    macddict Thread StarterMacUser Mitglied

    Mitglied seit:
    20.02.2005
    Beiträge:
    209
    Zustimmungen:
    5
    warum brauche ich eigentlich so eine schicht..ich meine codemäßig es gleich ob ich jetzt einfach "$query = "123";$result=mysql_query($query);" schreibe oder "$db->connect();$db->query($query)" schreibe...
     
    macddict, 18.11.2005
  4. timbajr

    timbajrMacUser Mitglied

    Mitglied seit:
    22.04.2005
    Beiträge:
    574
    Zustimmungen:
    26
    aus dem einfachen grund, dass wenn du z.B. Änderungen an den Tabellenstrukturen vornehmens willst (z.b. hinzufügen eines Attributs) dass du nicht alle deine Skripte nach Querys durchsuchen musst, die auf die entsprechende Tabelle zugreifen. Du speicherst einfach nur noch Objekte in DB und musst für das Speichern und Zugreifen immer nur Code an einer Stelle ändern...wenn du natürlich nie was ändern wilslt (was wohl eher nicht vorkommt) dann kannst es auch im Code schreiben. nachdem normalerweise jedoch 80% der Kosten bzw. des Aufwands aufs Maintaining von Systemen entfällt, lohnt es sich den Code wartbar zu schreiben :)

    achso du würdest dann ja nicht an das $db Objekt die Query übergeben, sondern ein Objekt erzeugen, dass deine Objekte speichern kann. In diesem sind dann die Querys gekapselt. Abgesehen davon, können damit Verbindungsinformationen viel leichter zentral abgelegt werden.
     
    timbajr, 18.11.2005
  5. macddict

    macddict Thread StarterMacUser Mitglied

    Mitglied seit:
    20.02.2005
    Beiträge:
    209
    Zustimmungen:
    5
    danke für die erklärung. du meinst also statt aus einen feld was auszulesen würdest du dann nicht "SELECT feld1 FROM tabelle...$foo = resultrow["feld1"];" mit entsprechendem query schreiben, sondern "$foo->getFeld()" als objekt, oder ? (bitte syntax nicht ernstnehmen :D)
     
    macddict, 18.11.2005
  6. timbajr

    timbajrMacUser Mitglied

    Mitglied seit:
    22.04.2005
    Beiträge:
    574
    Zustimmungen:
    26
    also dazu gibts ja nen haufen literatur...

    prinzipiell würde ich das folgendermaßen gestalten:
    du machst dir eine schicht die mit der datenbank kommunziert und für jedes deiner zu speichernden objekte legst du objekte an, die das entsprechende objekt speichern können bzw. aus der DB erzeugen können...

    also z.B. $a = new ObjektX(5) würde dann ein ObjektX dir erzeugen, dass z.B. die ID 5 hat. der Konstruktor dieses Objektes würde sich dann mit der DB verbinden und das entsprechende aus der DB lesen.
    du operierst dann nur noch auf diesem Objekt, also $a->gibAttributY()

    so meine ich das, verstanden ?
     
    timbajr, 18.11.2005
  7. macddict

    macddict Thread StarterMacUser Mitglied

    Mitglied seit:
    20.02.2005
    Beiträge:
    209
    Zustimmungen:
    5
    viele dank für die hinweise. bin jetzt grad dabei alles auf Klassen umzustricken, d.h. für jede Haupttabelle eine Klasse in PHP.

    Habe mich vor OO bisher gescheut, aber sehe jetzt das es die Verwaltung von DBs DEUTLICH einfacher macht. Auf jeden Fall kann ich mir einiges an Schreibarbeit sparen :D
     
    macddict, 19.11.2005
  8. michanismus

    michanismusMacUser Mitglied

    Mitglied seit:
    23.08.2004
    Beiträge:
    434
    Zustimmungen:
    0
    michanismus, 21.11.2005
Die Seite wird geladen...
Ähnliche Themen - ADBo PHP
  1. mampfi
    Antworten:
    7
    Aufrufe:
    268
  2. simusch
    Antworten:
    2
    Aufrufe:
    187
    simusch
    04.05.2017
  3. Saugkraft
    Antworten:
    27
    Aufrufe:
    1.615
  4. alex1000
    Antworten:
    5
    Aufrufe:
    358