ilch Forum » Ilch Clan 1.1 » Fehlersuche und Probleme » Verknüfung memberprofil - memlist

Geschlossen
  1. #31
    User Pic
    Ithron Hall Of Fame
    Registriert seit
    21.01.2006
    Beiträge
    2.659
    Beitragswertungen
    24 Beitragspunkte
    Falls wer den Code haben will, hab es einfach so gelöst (db_result() gibt unschöne fehlermeldungen weil man nit zu row 0 springen kann und die einfach zu unterdrücken per @ zeichen versuche ich immer zu vermeiden zwinker )

    <?php 
    #   Copyright by: David Schwarz
    #   Support: www.baduncles.de
    
    defined ('main') or die ( 'no direct access' );
    
    $title = $allgAr['title'].' :: User :: '.$lang['listofmembers'];
    $hmenu = $extented_forum_menu.'User <b> &raquo; </b> '.$lang['listofmembers'].$extented_forum_menu_sufix;
    $design = new design ( $title , $hmenu, 1);
    $design->header();
    
    $i = -9;
    while($i <= -1){
    	$recht = @db_result(db_query("SELECT zeigen FROM prefix_grundrechte WHERE id = $i"),0);
    	$userar[$i] = @db_result(db_query("SELECT COUNT(*) FROM prefix_user WHERE recht = $i"),0);
    	if ($userar[$i] == max($userar) AND $recht == yes) {$max = $i;}
    	$i++;
    	}
    $icqpic = 24;
    $limit = 30; // Limit 
    $page = ($menu->getA(1) == 'p' ? $menu->getE(1) : 1 );
    $MPL = db_make_sites ($page , "WHERE recht = $max" , $limit , '?user' , 'user' );
    $anfang = ($page - 1) * $limit;
    $tpl = new tpl ( 'user/memb_list.htm' );
    $tpl->set_out ( 'SITELINK', $MPL, 0);
    
    $end = @db_result(db_query("SELECT id FROM prefix_grundrechte WHERE zeigen = 'yes' ORDER by id DESC"),0);
    
    $u = -9;
    while($u <= $end){
    $class = '';
    
    $recht1 = db_fetch_assoc(db_query("SELECT id,name,zeigen FROM prefix_grundrechte WHERE id = $u"));
    $pgif = 'include/images/rangs/Version1/'.$recht1['name'].'.gif';
    $pjpg = 'include/images/rangs/Version1/'.$recht1['name'].'.jpg';
    $anzahl = @db_result(db_query("SELECT COUNT(*) FROM prefix_user WHERE recht = $u"),0);
    
    if($recht1['zeigen'] == yes AND $anzahl > $anfang){
     echo '<tr><td colspan="5" class="">'.(file_exists($pgif)?'<img src="'.$pgif.'">':(file_exists($pjpg)?'<img src="'.$pjpg.'">':$recht1['name'])).'</td></tr>';
     echo '<tr class="Chead"><th height="30" width="15%">Name</th><th align="center" width="12%">ForumRang</th><th align="center" width="8%">Dabei seit</th><th align="center" width="20%">ICQ</th><th align="center" width="10%" align="center">Beiträge</th><th align="center" width="31%" align="center">Charrs</th></tr>';
    }
    $anz = db_query("SELECT
    	prefix_grundrechte.zeigen as recht_zeigen,
    	prefix_user.posts,
    	prefix_user.id,
    	prefix_user.regist,
    	prefix_user.icq,
    	prefix_user.geschlecht,
    	prefix_user.gebdatum,
    	prefix_user.name,
    	prefix_user.status
    	FROM prefix_user
    	 LEFT JOIN prefix_grundrechte
    	ON prefix_user.recht = prefix_grundrechte.id
    	WHERE prefix_user.recht = $u
    	ORDER by prefix_user.regist,prefix_user.posts DESC LIMIT ".$anfang.",".$limit);
    while ($row = db_fetch_assoc($anz)){
     if($row['icq'] == ''){ $icq = 'Kein ICQ';}
      else{$icq1 = str_replace("-","",$row['icq']);
     $icq2 = str_replace(" ","",$icq1);
     if(is_numeric($icq2)){$icq = '<a href="http://www.icq.com/whitepages/cmd.php?uin='.$icq2.'&action=add"><img src="http://web.icq.com/whitepages/online?icq='.$icq2.'&img='.$icqpic.'" border="0"></a>';}}
     if($class == 'Cmite'){$class = 'Cnorm';}
      else{ $class = 'Cmite';}
     if($row['status'] == '0'){$ustatus = 'INAKTIV ';}
     	elseif($row['status'] == '2'){$ustatus = 'GESPERRT ';}
     	else{$ustatus = '';}
     if($row['recht_zeigen'] == yes){
     # Hier fragst du die Profilfelder ab!
     # Für weitere Profilfelder kopier einfach diese beiden Zeilen und ersetze charrs immer durch den neuen Profilfeld Namen! (insgesamt also 6 mal)
     # Vergiss nicht unten für das Template einen Weiteren Eintrag zu machen!
     $charrs = db_fetch_assoc(db_query("SELECT id FROM prefix_profilefields WHERE prefix_profilefields.show = 'charrs'"));
     $charrs = db_fetch_assoc(db_query("SELECT val FROM prefix_userfields WHERE uid = '".$row['id']."' AND fid = '".$charrs['id']."'"));
      $ar = array('CLASS' => $class,
    							'ID'  => $row['id'],
    							'NAME' => $row['name'],
    							'USTATUS' => $ustatus,
    							'RANG' => userrang($row['posts'],$row['id']),
    							'REG' => date('d.m.Y',$row['regist']),
    							'ICQ' => $icq,
    							'POSTS' => $row['posts'],
    							'CHARRS' => $charrs['val']
    							);
    							}
    							
    
    $tpl->set_ar_out($ar,1);
    }
    $u++;
    }
    
    $tpl->out(2);
    $design->footer();
    ?>
    ZitatZitat geschrieben von loW

    Ja ich habs gesehen und wenn ichs kostenlos bekomm dann zahl ich doch nix dafür oder?
    0 Mitglieder finden den Beitrag gut.
  2. #32
    User Pic
    boehserdavid Mitglied
    Registriert seit
    26.08.2006
    Beiträge
    2.122
    Beitragswertungen
    2 Beitragspunkte
    Ithron: Dein Code wird nicht gehen. -> Charrs
    Aber was ist an db_result schlecht? Und warum kann man mit 0 nicht den ersten Wert ausgeben lassen?
    -Heute schon böhse gewesen?- Ab zur Community
    -No Support via Contact-
    0 Mitglieder finden den Beitrag gut.
  3. #33
    User Pic
    Goschkin Mitglied
    Registriert seit
    04.01.2008
    Beiträge
    68
    Beitragswertungen
    0 Beitragspunkte
    Alles klar, ich habs, danke Dir Ithron ! Doch David, der Code Funktioniert !

    Ich danke Euch alle für die Zahlreichen Hilfestellungen und Tipps.

    Damit kann dieser Thread geschlossen werden .


    Zuletzt modifiziert von Goschkin am 18.01.2008 - 08:57:38
    0 Mitglieder finden den Beitrag gut.
  4. #34
    User Pic
    Ithron Hall Of Fame
    Registriert seit
    21.01.2006
    Beiträge
    2.659
    Beitragswertungen
    24 Beitragspunkte
    David, bei einer MySQL Abfrage wird groß und kleinschreibung standartmäßig nicht beachtet.

    Das mit dem result weiß ich auch nicht so genau..
    Ich erklär es mir so, dass ich keine Reihe (row) abgefragt habe (SELECT fid FROM, und nicht SELECT * FROM). Ich weiß es aber ehrlich gesagt nicht zwinker
    ZitatZitat geschrieben von loW

    Ja ich habs gesehen und wenn ichs kostenlos bekomm dann zahl ich doch nix dafür oder?
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Fehlersuche und Probleme

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten