CyTS und wi_readGroupPermissions PROBLEM

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • CyTS und wi_readGroupPermissions PROBLEM

    hi @ all
    baue gerade an einem TS² WI

    habe bloß ein bzw. zwei probleme


    Quellcode

    1. <?php
    2. require("cyts.class.php");
    3. $cyts = new cyts;
    4. $cyts->connect($server,$querytcp, $queryudp);
    5. $cyts->wi_login($username, $passwort);
    6. $rssa = $cyts->wi_readGroupPermissions('sa');
    7. foreach ($rssa as $sa)
    8. {
    9. echo $sa[ugSA_upAccessWebAdminServer];
    10. } ;
    11. ?>
    Alles anzeigen



    // Versuche mir die Gruppenrechte vom SA ausgeben zu lassen habe es schon mit einer while-schleife for-schleife foreach mit wi_login oder (s)login probiert es kommt immer dasselbe entweder gar nichts oder fehlermeldung dass es kein array gibt
    Invalid argument supplied for foreach()

    Habe desweiteren auch versucht mit alles aus dem array auszugeben nicht nur das webadminserver aber da kam auch kein zeichen :(

    Und ich weiß nicht mehr weiter vllt. kann mir in der frage mal jemand helfen -.-
    Bitte dringend um hilfe :arrow:


    // Nochmal so wer die klasse nicht hat das steht unter der funktion

    Quellcode

    1. function wi_readGroupPermissions($class) {
    2. $class = strtolower($class);
    3. $classes = array('sa', 'ca', 'op', 'v', 'r', 'u');
    4. if (!in_array($class, $classes, true)) return false;
    5. if (!$sRead = $this->_wiget("/server_manager_permission_$class.html")) return false;
    6. $pattern = '/<input.*?name="([a-zA-Z_]+)".*?value="1"(checked)*>/im';
    7. if (!preg_match_all($pattern, $sRead[1], $matches)) return false;
    8. $data = array();
    9. foreach ($matches[1] as $key => $val) {
    10. if ($matches[2][$key] == "checked")
    11. $matches[2][$key] = 1;
    12. else
    13. $matches[2][$key] = 0;
    14. $data[$val] = $matches[2][$key];
    15. }
    16. return $data;
    17. }
    Alles anzeigen
  • hmm aber das dürfte doch eigentlich nichts machen oder ??

    wenn ich der variable $ den namen class geb ($class) und dann müsste doch $classes auch falsch sein oder ? es beinhaltet nämlich class


    eigentlich könnte man sich das

    $class = strtolower($class);
    $classes = array('sa', 'ca', 'op', 'v', 'r', 'u');
    if (!in_array($class, $classes, true)) return false;

    am anfang doch sparen oder ?
    denn wenn ich die class 'sa' nehme und nicht irgendwas andres dürfte es da doch keine schwierigkeiten geben oder ?


    ==> habe das mit dem $class mal probiert habe es auf $group umbenannt aber geht trotzdem nicht :( würd emich auch sehr wundern wenn ein variablenname nicht erkannt wird nur weil er class heist ^^
  • nein, "classes" ist ok, hier ist die Liste - diese darf man nicht benutzen

    and or xor __FILE__
    __LINE__ array() as break case
    cfunction class const continue declare
    default die() do echo() else
    elseif empty() enddeclare endfor endforeach
    endif endswitch endwhile eval exit()
    extends for foreach function global
    if include() include_once() isset() list()
    new old_function print() require() require_once()
    return() static switch unset() use
    var while __FUNCTION__ __CLASS__


    Ich sehe hier kein Problem. Variable class bei dir ist eine locale Variable. Versuche sie einfach zu ändern:

    Quellcode

    1. <?function wi_readGroupPermissions($MY_VAR) {
    2. $MY_VAR = strtolower($MY_VAR);
    3. $classes = array('sa', 'ca', 'op', 'v', 'r', 'u');
    4. if (!in_array($MY_VAR, $classes, true)) return false;
    5. if (!$sRead = $this->_wiget("/server_manager_permission_$MY_VAR.html")) return false;
    6. $pattern = '/<input.*?name="([a-zA-Z_]+)".*?value="1"(checked)*>/im';
    7. if (!preg_match_all($pattern, $sRead[1], $matches)) return false;
    8. $data = array();
    9. foreach ($matches[1] as $key => $val) {
    10. if ($matches[2][$key] == "checked")
    11. $matches[2][$key] = 1;
    12. else
    13. $matches[2][$key] = 0;
    14. $data[$val] = $matches[2][$key];
    15. }
    16. return $data;
    17. }?>
    Alles anzeigen
  • mann, ich hab ein Fehler in einer tausend mal geprüfte Code gesucht :oops: . Tschuldigung, hab nicht richtig verstanden. Also, angenohmen ein Fehler kann nur in deiner Function sein. Du prüfs aber niemals Rückgabewert. z.B so muss es aussehen:

    Quellcode

    1. <?php
    2. require("cyts.class.php");
    3. $cyts = new cyts;
    4. $cyts->connect($server,$querytcp, $queryudp);
    5. if($cyts){
    6. $cyts->wi_login($username, $passwort);
    7. if($cyts){
    8. $rssa = $cyts->wi_readGroupPermissions('sa');
    9. if($rssa){
    10. foreach ($rssa as $sa){
    11. echo $sa[ugSA_upAccessWebAdminServer];
    12. } ;
    13. }else{
    14. echo "Fehler bei Verwendung wi_readGroupPermissions('sa')";
    15. }
    16. }else{
    17. echo "Fehler beim Login";
    18. }
    19. }else{
    20. echo "Fehler bei der Verbindung mit DB";
    21. }
    22. ?>
    Alles anzeigen


    Und dann sieste wo Fehler ist
  • hmm naja gut scheißen wir mal auf die klasse ^^

    gibt es ne möglichkeit im hintergrund sich auf einer seite einzuloggen und auf eine weitere seite zu springen und den inhalt von dieser in einem array zu speichern und das ganze dann mit php weiter ausgeben und editieren zu lassen und dann wieder in das post der seite zu schreiben und wieder auszuloggen ?

    hoffe habe das jetzt nciht komplizierter erklärt als ich das meine ^^
  • alter ! geil es funzt jetz komm ich nach 2 wochen endlich wieder vorwärts ^^
    ich hoffe das posten funzt auch so geil ;)



    #########.......#..............#...........#................#.............
    .........#..................#..............#..............#............#..............
    .........#..................#..............#................#.........#...............
    .........#..................########...................####.................
    .........#..................########...................####.................
    .........#..................#..............#.................#.......#................
    .........#..................#..............#...............#..........#...............
    .........#..................#..............#.............#.............#..............




    Cya