защо не ми показва нито запълва array-a

dunix

Registered
Здравейте,

Понеже кода е 100тина реда реших да го кача в сайта и да дам линк за сваляне.

С няколко думи се пробвам да сложа права на групите коя група кои форуми може да вижда.
Код 1. От 9 до 57 ред е кода, който трябва да взима имената на форумите
Код 2. ОТ 60 до 113 ред е кода с който показвам други настройки като 'кой може да трие постове', 'редактира постове' и т.н.

Когато сложа
PHP:
var_dump($permissions['forum_access']);
м/у първия и втория код ми го показва:
HTML:
array(1) {
  [0]=>
  array(2) {
    ["label"]=>
    string(19) "can_themes_view_ids"
    ["type"]=>
    string(5) "array"
  }
}
но когато го сложа след втория код (113 ред) ми показва на негово място:
HTML:
array(8 ) {
  [0]=>
  array(2) {
    ["label"]=>
    string(14) "can_view_forum"
    ["type"]=>
    string(7) "boolean"
  }
  [1]=>
  array(2) {
    ["label"]=>
    string(16) "can_create_theme"
    ["type"]=>
    string(7) "boolean"
  }
  [2]=>
  array(2) {
    ["label"]=>
    string(8 ) "can_post"
    ["type"]=>
    string(7) "boolean"
  }
  [3]=>
  array(2) {
    ["label"]=>
    string(17) "can_edit_own_post"
    ["type"]=>
    string(7) "boolean"
  }
  [4]=>
  array(2) {
    ["label"]=>
    string(17) "can_edit_all_post"
    ["type"]=>
    string(7) "boolean"
  }
  [5]=>
  array(2) {
    ["label"]=>
    string(19) "can_delete_own_post"
    ["type"]=>
    string(7) "boolean"
  }
  [6]=>
  array(2) {
    ["label"]=>
    string(19) "can_delete_all_post"
    ["type"]=>
    string(7) "boolean"
  }
  [7]=>
  array(2) {
    ["label"]=>
    string(13) "theme_on_page"
    ["type"]=>
    string(6) "number"
  }
}
Защо не добавя can_themes_view_ids към втория код и как мога да го оправя?


Това е кода: свали
 
Защото презаписваш стойнстта на масива, просто ползвай array_merge() :idea:

PHP:
$permissions[$key] = array_merge($permissions[$key],array(
....
));
 
Дава ми
HTML:
[16-Dec-2013 20:41:44 Europe/Sofia] PHP Warning:  array_merge() expects at least 1 parameter, 0 given in /home/mitko/public_html/includes/cp/cp.membergroups.php on line 184

Линия 184 във файла е 88
PHP:
$permissions = array_merge();

Кода е тук

Също така вече ми показва нещо и то са имената на групите потребители, а не имената на категориите форуми
 
Replace каза:
Прочети как се ползва array_merge(), също така съм ти дал пример как трябва да бъде същия този ред.

Прочетох още първия път. Просто след като го направих втория път ми показа някакъв резултат и не бях обърнал внимание на WARNING-a. След като ми намекна че от там идва проблема препрочетох отново и го направих така:
замених
PHP:
$permissions = array_merge();
с
PHP:
$permissions = array();

и сложих след 102 ред

PHP:
$permissions[$key] = array_merge($permissions['forum_access'], $permissions1['forum_theme_view'] );

И пак ми дава същия резултат като преди, но без WARNING-a.

Но пак остава проблема с показването на категориите форуми. Вместо категориите ми показва групите потребители, които ги взима от $result.
 
Replace каза:

Показва ми групите потребители, а трябва да ми показва категориите форуми.
С две думи
PHP:
$permissions1['forum_theme_view']
чете от $result, а не от $forum и вместо да ми показва имената на категориите то ми показва

a7e38e3293fffd82.png


Свали кода с промените.
 
Ако го направя по начина долу не ми дава никакъв резултат
PHP:
$permissions[$key] = array_merge($permissions1['forum_theme_view'],
	array('label' => 'can_view_forum', 'type' => 'boolean'),
	array('label' => 'can_create_theme', 'type' => 'boolean'),
	array('label' => 'can_post', 'type' => 'boolean'),
	array('label' => 'can_edit_own_post', 'type' => 'boolean'),
	array('label' => 'can_edit_all_post', 'type' => 'boolean'),
	array('label' => 'can_delete_own_post', 'type' => 'boolean'),
	array('label' => 'can_delete_all_post', 'type' => 'boolean'),
	array('label' => 'theme_on_page', 'type' => 'number')
);

ddedbff05b1658c4.png
 

Back
Горе