Datenbankproblem (Welcher Datentyp?)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Datenbankproblem (Welcher Datentyp?)

    hi leute

    es ist einfaches problem, aber ich überlege mir, wie ich es in php möglichst effektiv löse:

    in einer datenbank soll die anrede einer person gespeichert werden. die möglichen werte sind 0 (entspricht "keine angabe"), 1 (entspricht "herr") und 2 (entspricht "frau"). mit welchem wert speichere ich es möglichst effektiv ab (sodass wirklich nur die 3 möglich sind)?


    in einer klasse "Benutzerverwaltung" soll dann der wert mittels der funktion "GetAnrede($benutzer_id)" ausgegeben werden. wenn der wert 1 ist, soll es "Herr" ausgeben, wenn 2, dann "frau". was aber, wenn der wert "keine angabe" (also 0 in mysql) ist? die methode könnte einfach "false" ausgeben, aber das ist kein sauberer programmierstil, da es ja normalerweise einen string ausgibt und keinen bool-wert (ich programmiere meistens c#, da ist sowas garnicht möglich). welche möglichkeiten gibt es da noch? ("keine angabe" als string soll sie auch nicht ausgeben, da dieser fall entsprechend anders behandelt wird.)

    danke schon mal
    christian

  • #2
    zur 1
    schau dir enum typen bei mysql

    zur 2
    die hälfte von vordefinierten PHP funktionen liefern mixed oder false zurück und die PHP-programmierer kommen damit am meistens zu Recht.
    wenn es dir nicht passt, dann kannst du auch mit exceptionen arbeiten ode wie auch immer du willst
    Slava
    bituniverse.com

    Kommentar


    • #3
      danke, ich werden mir diesen ENUM typ mal anschauen.

      hier die lösung für die methode, falls es andere interessiert (ist eigentl. ganz einfach):
      ich denke, ich werde bei der "GetAnrede($bentzer_id)"-Methode einen bool-Wert zurückgeben und die anrede in einem Wert speichern, der als Referenz in den Argumenten mitgegeben wird, also z. B. "GetAnrede($benutzer_id, &$anrede)". ist keine anrede vorhanden, wird die &$anrede referenz einfach leergelassen (finde es toll, dass es referenzen in php gibt!).

      Kommentar

      Lädt...
      X