Ankündigung

Einklappen
Keine Ankündigung bisher.

array frage

Einklappen

Unconfigured Ad Widget

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

  • theone
    hat ein Thema erstellt array frage.

    array frage

    Hallo Leute.. habe mal eine logistische Frage.. komm hier gerade als Anfänger nicht weiter (((

    der $wert gibt hierbei Rollen von mind 5 Personen wieder.
    Nur einer der Personen soll ausgegeben werden, nähmlich der, der die höhere Rolle hat. Ich weis leider nicht wie ich das anstellen soll, das die Rollen der Personen durchgegangen wird und nur derjenige ausgegeben hat der die höhere Rolle hat.Rollen sind z.b. Admin, Co-Admin, Moderator


    PHP-Code:

    foreach($result_array as $wert)
    {
       foreach(
    $wert as $key => $zyk)
       {
          
    // Ausgabe der Rolle der jeweiligen Person.. $key ist der Index der Person 0,1,2,3,4 und $zyk die Rolle
      
       
    }

    }



    /*

    Hier kommt die Ausgabe rein... In der Art: SELECT Person WHERE ID = $key ...

    */ 

  • nikosch
    antwortet
    jetzt hagt mal nicht so auf den Rollen rum ja diese sind definiert und kommen als Webservice-Response.
    WIE?
    Mir geht es hierbei darum das ich irgendwie anhand der foreach_schleife alle Mitglieder nach Ihren Rollen durchchecken kann und den von mir höherwertig-definierten aussuche.
    Denkst Du, ja. In Wahrheit wäre das bereits in der DB viel einfacher zu lösen.

    Einen Kommentar schreiben:


  • dennis81
    antwortet
    Zitat von theone Beitrag anzeigen
    diese will ich jetzt durchscannen und sagen, gib mir nur den Vorstand wieder.. Falls es keinen geben sollte dann die Geschäftsleitung usw.. also wenn es einen Vorstand gibt.. dann gib in diesem Fall $key => 1 zurück
    Ohne dem hätte ich dir das hier mal als Schnippsel vorgeschlagen:

    PHP-Code:
    <?php

    $groups 
    = array (
        
    'Group 1',
        
    'Group 2',
        
    'Group 3',
        
    'Group 4',
        
    'Group 5'
    );

    $employee = array (
        array (
            
    'name' => 'Max Mustermann',
            
    'groups' => array('Group 1''Group 2')
        ),
        array (
            
    'name' => 'Martina Mustermann',
            
    'groups' => array('Group 4')
        ),
        array (
            
    'name' => 'Marwin Mustermann',
            
    'groups' => array('Group 3')
        ),
    );

    $max 0;
    $max_emp 0;

    foreach ( 
    $employee as $emp_id => $emp ) {
        foreach ( 
    $emp['groups'] as $grp ) {
            if ( 
    array_search($grp$groups ) > $max ) {
                
    $max array_search($grp$groups );
                
    $max_emp $emp_id;
            }
        }
    }

    var_dump$employee[$max_emp] );
    Allerdings hängt es stark von deiner Verwendeten Struktur ab. Eventuell könnte man das ja auch schon per SQL herausfinden.

    Einen Kommentar schreiben:


  • theone
    antwortet
    jetzt hagt mal nicht so auf den Rollen rum ja diese sind definiert und kommen als Webservice-Response.

    Mir geht es hierbei darum das ich irgendwie anhand der foreach_schleife alle Mitglieder nach Ihren Rollen durchchecken kann und den von mir höherwertig-definierten aussuche.

    wie: 0 => mitglied, 1 => Vorstand, 2 => Mitglied, 3 => Mitglied, 4 => Geschäftsleitung

    diese will ich jetzt durchscannen und sagen, gib mir nur den Vorstand wieder.. Falls es keinen geben sollte dann die Geschäftsleitung usw.. also wenn es einen Vorstand gibt.. dann gib in diesem Fall $key => 1 zurück

    mit diesem $key will ich dann z.b. eine sql-abfrage nur mit dieser person machen.. es gibt hierbei immer nur einen Vorstand oder eine Geschäftsleitung

    Einen Kommentar schreiben:


  • lstegelitz
    antwortet
    Wie ist denn die Abbildung der Hierarchie (in der Datenbank)? DAS ist die entscheidende Info - anders kann niemand wissen, das der Admin "höher" ist (mehr Rechte hat) als der Co-Admin...

    Einen Kommentar schreiben:


  • theone
    antwortet
    Hi, danke für die Antworten.
    Nein, die Rollen waren frei gewählt.. das waren nur Beispiele. Es soll dann eine Art Gruppe geben.. und dort gibt es eine art Vorsitzenden, Co-Vorsitzenden usw.

    Einen Kommentar schreiben:


  • dennis81
    antwortet
    Soll das eine Art RBAC werden?

    Einen Kommentar schreiben:


  • BlackScorp
    antwortet
    die rollen sollstest du als interger werte definieren und mit array_sort funktion ab bzw aufsteigend sortieren

    Einen Kommentar schreiben:


  • dennis81
    antwortet
    Logistik und Logik sind zwei grundsätzlich verschiedene Dinge. Und eine if-Schleife gibt es auch nicht.

    Der Code ist nicht gerade sinnvoll. In jedem Fall wird genau das gleiche ausgeführt. Und was sind höhere Buchstaben? A > B oder B > A?

    Einen Kommentar schreiben:

Lädt...
X