PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [PHP] Downline / Referalanzeige Problem



bast1e
28.11.2004, 22:28
Hi!
Bei meinem neuen Projekt ist gerade das Refsystem dran.
Hierzu hab ich eine Funktion geschrieben, die in X Ebenen die geworbenen Mitglieder findet:



$sysconfig['reflayer'] = 10;

function bank_referals($data,$usr_id,$layer = 0) {
global $sysconfig;
foreach ($data AS $user) {
if($user['solicitor'] == $usr_id) {
$refs['e'.$layer]['u'.$usr_id][] = $user['u_id'];
if($layer < $sysconfig['reflayer']) $temp = bank_referals($data,$user['u_id'],$layer+1);
if(is_array($temp)) $refs = array_merge_recursive($refs,$temp);
}
}
return $refs;
}


solicitor -> Werber

Nun möchte ich das ganze vernünftig in HTML ausgeben (bin wahrscheinlich zu blockiert)

der Testarray den ich nutze:


Array
(
[e0] => Array
(
[u1] => Array
(
[0] => 2
[1] => 10
)

)

[e1] => Array
(
[u2] => Array
(
[0] => 11
)

[u10] => Array
(
[0] => 13
)

)

[e2] => Array
(
[u11] => Array
(
[0] => 12
)

)

)


Daraus soll werden:



1
-> 2
-> 11
-> 12
-> 10
-> 13


In dem DataArray können auch ruhig Ebene und werber vertauscht werden also
$refs['e'.$layer]['u'.$usr_id][] = $user['u_id'];
oder
$refs['u'.$usr_id]['e'.$layer][] = $user['u_id'];

das ist ja egal ;)

Hat jemand eine Idee?

Danke schonmal für die Zeit, die ihr ins Lesen investiert habt :)

edit: mein versuch:



$referals = bank_referals($info,$usrid); // Array

foreach($referals AS $key => $refs) {
$spaces = array_keys($refs);
$spaces = $spaces[0];
foreach($refs[$spaces] AS $ref) {
$space = str_replace("e","",$spaces);
for($i=0;$i<=$space;$i++) echo "&nbsp;";
echo $ref."<br />\n";
}
}


dabei ist zu beachten, dass ich
$refs['u'.$usr_id]['e'.$layer][] = $user['u_id'];
genommen hab (also den array ein wenig verdreht)

kommt nur:


1
->2
->10
-->11
--->12
-->13

dummerweise ist 11 nicht ref von 10 sondern von 2.

bast1e
29.11.2004, 20:35
gelöst - ich haus einfach in die funktion mit rein :D
danke für euer gehör