Ankündigung

Einklappen
Keine Ankündigung bisher.

IF Abfrage

Einklappen

Neue Werbung 2019

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

  • IF Abfrage

    Hallo, mit Datenbanken bin ich neu und habe ein Problem :

    SELECT * FROM $table1 WHERE coder='$username'");

    Ich habe eine Tabelle in dem die Namen der jeweiligen Coder sind und diese dürfen dementsprechend auch darauf zugreifen und ihr eigenes sehen.
    Das Problem ist nun ich bin der Admin und möchte ALLES angezeigt bekommen nur zurzeit wird es ja per username angezeigt und zugeordnet .

    Gibt es da eine Abfrage wie :

    SELECT * FROM $table1 WHERE coder='$username' OR coder='Meinname'");

    Habe folgendes zur verfügung :

    <?php if($admin){ ?> <?php } ?> (andere Tabelle und Datenbank) <- funktioniert aber nicht für meine abfrage

    bin verwirrt ?

    Oder ist es möglich auch aus der anderen Datenbank was zu nehmen dort wo auch Admin definiert ist?

  • #2
    Lass den Filter WHERE weg dann siehst du alles
    The string "()()" is not palindrom but the String "())(" is.

    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
    PHP.de Wissenssammlung | Kein Support per PN

    Kommentar


    • #3
      WHERE ist notwendig . Sobald ein Coder etwas einträgt in die Datenbank wird sein Name mit übermittelt . Und ich lade das ganze in einer Liste wo JEDER einzelne seine Produkte abrufen kann.

      Soweit Funktioniert das auch das jeder seine Produkte sieht aber wie gesagt als Admin möchte ich alles sehn. Gibt es da keine Möglichkeit das vorher zu definieren wie $username = "MarkusxX" then Else ... sowas?

      Kommentar


      • #4
        ich bin der Admin und möchte ALLES angezeigt bekommen
        Dann benutz einen anderen SQL Query als die normalen Coder (dein PHP-Script weiss ja schließlich, dass du admin bist). Wie hausl schon sagte eben einen ohne die WHERE-Klausel.

        Kommentar


        • #5
          OK Danke !
          Habe das nun so gemacht mit 2 Externen PHP Seiten einmal für Admin und für Coder und diese dann Aufgeteilt

          Kommentar


          • #6
            Zitat von MarkusxX Beitrag anzeigen
            Gibt es da keine Möglichkeit das vorher zu definieren wie $username = "MarkusxX" then Else ... sowas?
            Was Du suchst nennt sich Row Level Security - und das kann MySQL nicht. https://www.postgresql.org/docs/9.5/...wsecurity.html
            PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

            Kommentar


            • #7
              Zitat von akretschmer Beitrag anzeigen

              Was Du suchst nennt sich Row Level Security - und das kann MySQL nicht. https://www.postgresql.org/docs/9.5/...wsecurity.html
              Sieht cool aus. Da aber wohl auch die Tabelle je nach Admin-Rolle oder User-Rolle eine andere ist, würde die Row Level Security den Usecase nicht vollständig abdecken können.

              Das Szenario hier ist aber auch ziemlich einfache Business-Logik.
              PHP-Code:
              if ($_SESSION['isAdmin']) {
                  
              $data $db->getAdminStuff();
              } else {
                  
              $data $db->getCoderStuff();

              <?php if($admin){ ?> <?php } ?> (andere Tabelle und Datenbank) <- funktioniert aber nicht für meine abfrage
              Hätte halt auch so formuliert werden müssen, dass wir wissen was denn da nicht funktioniert.
              [COLOR=#A9A9A9]Relax, you're doing fine.[/COLOR]
              [URL="http://php.net/"]RTFM[/URL] | [URL="http://php-de.github.io/"]php.de Wissenssammlung[/URL] | [URL="http://use-the-index-luke.com/de"]Datenbankindizes[/URL] | [URL="https://www.php.de/forum/webentwicklung/datenbanken/111631-bild-aus-datenbank-auslesen?p=1209079#post1209079"]Dateien in der DB?[/URL]

              Kommentar

              Lädt...
              X