Ankündigung

Einklappen
Keine Ankündigung bisher.

festen definierten Keys zum Keys in der DB

Einklappen

Neue Werbung 2019

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

  • festen definierten Keys zum Keys in der DB

    Hi Zusammen,

    ich habe bitte eine Frage und zwar: Ich habe eine Klasse, wo ich meine Userberechtigung-Methode (zum Beispiel; isAdmin($flag)) implementiert habe.
    Und die Value "$flag" ist eine fest definierte Key in php- Code - Aber jetzt möchte ich die Wert "$flag" in der DB (bzw. in der Tabelle ) ablegen und von dort aus auslesen.(bzw. prüfen).
    Wie könnte man das am Bestens lösen?

    Vielen Dank für deine Antwort und für deine Hilfe.


  • #2
    Zitat von pamloly Beitrag anzeigen
    Wie könnte man das am Bestens lösen?
    Mit einer Datenbankabfrage.

    Kommentar


    • #3
      Zitat von Dormilich Beitrag anzeigen

      Mit einer Datenbankabfrage.
      Vielen Dank! Diese wurde schon gebaut. Aber ich habe eine andere Spezifikation.....

      Kommentar


      • #4
        Und die Value "$flag" ist eine fest definierte Key in php- Code
        Darunter kann ich mir nichts vorstellen.

        macht auch nichts, ich verstehe auch $flag nicht.
        PHP-Code:
        isAdmin() : bool {} 
        reicht doch.

        Kommentar


        • #5
          Hi Zusammen,

          Vielen Dank für eure Rückmeldung!!! Das ist wirklich sehr nett.

          ich habe noch eine weitere Frage bezüglich der oben genannten Antwort..........

          // Rechtzugriff
          Zeile 1 - $pro_XXX->checkrights_XXXX(RIGHT_ADMIN);
          Zeile 2 - "RIGHT_ADMIN" ist eine fest definierte Variable, die über die Methode (Checkrights_XXXX($rightflags)) aufgerufen wird. Ich habe momentan in der Methode "Checkrights_XXXX($rightflags)" der Select-Abfrage gebaut,
          aber ich bin nicht zufrieden.


          Frage_user_rechte.PNG

          Sollte ich den Select- Abfrage in der Methode (Checkrights_XXXX($flag) - Siehe oben "Codespnisel" ) oder schon in Zeile 1 aufbauen?
          Diese Methode "(Checkrights_XXXX($flag)" wurde im mehr als 200 Stellen verwenden. -> ($flags sollte kein festen definierte Variable sein, sondern ein Eintrag in DB)

          Aber ich möchte schon bei der Zeile 1 - der Werte "RIGHT_ADMIN" - in DB auslesen…. Nicht zuerst in festen definierte Variable lesen und dann prüft, ob diese feste definierte Variable in DB existiert und soo weiter. Sondern direkt bei der Methode Aufruf checkrights_XXXX(RIGHT_ADMIN) der Werte "RIGHT_ADMIN" in DB lesen.
          Wie könnte ich es am Bestens lösen? (Wenn möglich Codespnisel). Ist meine Lösung in Ordnung? oder habt ihr noch ein paar Tipps für mich?
          Über eure Rückmeldung würde ich mich sehr freuen!!!!

          Kommentar


          • #6
            Schon mal über Rollen nachgedacht?
            Ich finde auch auch besser die Rechte als teil de Userobjectes zu sehen, als überalll wo es oportun scheint die Datenbank zu befragen.

            Kommentar


            • #7
              Nutze zudem Sessions.

              Kommentar


              • #8
                vielen Dank für eure Rückmeldung

                Kommentar


                • #9
                  Hi,

                  ich möchte eine Klasse NUR einmal laden( bzw, definieren) und danach überall in meinem Projekt zu dieser Klasse zugreifen.
                  Wie kann ich das am Bestens machen?
                  Ich habe schon mit global ausprobiert, aber funktioniert nicht.


                  PHP-Code:
                  class C{
                  public $var1 = 2;
                  public $var2 = 3 ;
                  }



                  class A{

                  <?php

                  require_once(xxxxxx)
                  global 
                  $var
                  $var
                  = new class C();
                  $var->getDB();
                  ?>
                  }

                  class B{

                  <?php
                  global $var;
                  print_r($var->var1)

                  ?>
                  }
                  Ausgabe: Es kommt nichts zurück!
                  Aber ich möchte,dass 2 als Ergebnis kommt.

                  Vielen Dank!!

                  Kommentar


                  • #10
                    ich möchte eine Klasse NUR einmal laden( bzw, definieren) und danach überall in meinem Projekt zu dieser Klasse zugreifen.
                    Du verwechselst "Klasse" und "Objekt". Eine Klasse ist eine Vorlage, mit deren Hilfe Objekte der Klasse instaziiert werden. Zugriff auf (nicht-statische) Variablen einer Klasse kann man NUR über ein Objekt realisieren.
                    Grundlagen der Objektorierung...

                    Was man machen könnte bzw. was deinem Anliegen am nächsten käme, wären statische Variablen (Schlüsselwort "static"). Diese existieren tatsächlich per Klasse nur einmal, werden aber etwas anders angesprochen:
                    PHP-Code:

                    class {
                      public static 
                    $var 'whatever';
                    }

                    var_dump(A::$var); // string(8) "whatever" 
                    Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

                    Kommentar


                    • #11
                      Dein gezeigter Code kann nicht funktionieren, poste bitte den echten...
                      Competence-Center -> Enjoy the Informatrix
                      PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                      Kommentar


                      • #12
                        Zum Beispiel:
                        Ich habe in einem Objekt A eine Variable deklariert
                        PHP-Code:
                        class A{
                        // definition von meiner Variable
                        public static $var
                        // setze ich meine Variable in diese Function
                        function getValue()
                        {
                        self::$var4;
                        }

                        ich möchte auf diese Werte überall in anderen Klassen meines Projektes zugreifen.
                        Ich habe schon mit $objname::$var verwendet, aber funktioniert immer noch nicht.

                        Vielen Dank für eure Rückmeldung.

                        Kommentar


                        • #13
                          Davon ausgehend, dass das nun Dein wirklich echter Code ist, kommt ein Fehler, denn da fehlt ein Semikolon.
                          Der Zugriff wäre dann über den Klassennamen möglich:
                          PHP-Code:
                          A::$var
                          Competence-Center -> Enjoy the Informatrix
                          PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                          Kommentar


                          • #14
                            Zitat von Arne Drews Beitrag anzeigen
                            Davon ausgehend, dass das nun Dein wirklich echter Code ist, kommt ein Fehler, denn da fehlt ein Semikolon.
                            Der Zugriff wäre dann über den Klassennamen möglich:
                            PHP-Code:
                            A::$var
                            Das habe ich gemacht, aber diese A::$var kommt immer leer (bzw. nicht gefüllt ). Ich verstehe nicht mehr warum......

                            Kommentar


                            • #15
                              Zitat von pamloly Beitrag anzeigen
                              Ich habe schon mit $objname::$var verwendet, aber funktioniert immer noch nicht.
                              Was daran liegt, dass $var keine Property der Objekt-Instanz ist.

                              Kommentar

                              Lädt...
                              X