ilch Forum » Ilch Clan 1.1 » Allgemein » Profilansicht (Eigene Freunde Auflisten)

Geschlossen
  1. #1
    User Pic
    htdocs Mitglied
    Registriert seit
    29.04.2010
    Beiträge
    492
    Beitragswertungen
    17 Beitragspunkte
    Hallo,

    Ja habe wieder eine Frage, denke mal ihr könnt mich wie immer Helfen ^^..

    Ich wollte bei der Profil ansicht eine tabelle machen wo man seine Freunde auch sieht, aber es soll nicht der name da stehen sondern das Land oder stadt da stehen mit eine anzahl der Freunde.

    Beispiel:
    ----------------
    • Meine Freunde

    Berlin (7) Hamburg (3)
    ----------------


    Der Name sollte die stadt sein und das was in klammern steht die anzahl der Freunde die in der stadt wohnen.

    Bei Ländern wäre es ja nicht so toll. Eventuell eine flagge vor dem Stadtnamen.

    Hat da jemadt was nützliches für mich oder ein weg was ich ändern müsste?

    Bedanke mich wie immer an euch..


    Zuletzt modifiziert von htdocs am 29.04.2011 - 23:02:53
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    htdocs Mitglied
    Registriert seit
    29.04.2010
    Beiträge
    492
    Beitragswertungen
    17 Beitragspunkte
    Keiner ne Lösung für mich zwinker
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Ich kann dir ne sql abfrage geben, wenn du damit dann weiterarbeiten willst, weiter müsste man natürlich noch wissen, welches Freundemodul du einsetzt.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    htdocs Mitglied
    Registriert seit
    29.04.2010
    Beiträge
    492
    Beitragswertungen
    17 Beitragspunkte
    Freunde Modul glaube sollte das hier sein Freundesliste 1.0a für IlchClan 1.1, steht auch dein name als entwickler drin ..

    Habe schon sovieles verbaut da hab ich bissel den überblick verloren grumml

    Aber denke mal das ist das aber..

    Dank dir für deine Hilfe
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    $qry = db_query('SELECT u.wohnort, COUNT(u.id) AS anzahl FROM prefix_friends f INNER JOIN prefix_user u ON f.uid = '.$_SESSION['authid'].' AND f.fid = u.id GROUP BY u.wohnort ORDER BY u.wohnort');
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    htdocs Mitglied
    Registriert seit
    29.04.2010
    Beiträge
    492
    Beitragswertungen
    17 Beitragspunkte
    Glaube mal da brauch ich doch bissel mehr hilfe lächeln

    Wiegesagt, Profilansicht sollte eine tabelle rein wo man seine Freunde sieht.

    Beispiel in der Template mit {FREUNDE}

    und in der content/user/user_details.php

    hatte ich bei

    include('user_infos.php');
    
    $ar = array (
          'UID' => $uid,
          'NAME' => $row['name'],
    	'JOINED'  => date('d.m.Y',$row['regist']),
    	'LASTAK'  => date('d.m.Y - H:i',$row['llogin']),
    	'POSTS'   => $row['posts'],
    	'postpday' => $postpday,
    	'RANG'    => userrang ($row['posts'],$uid),
    	'AVATA'   => $avatar,
          'LASTUSER' => last_user($uid),
    und so weiter


    Hatte ich ein eintrag mit

    'FREUNDE'   => $freunde,


    reingetan

    Naja das zeichen ist schon mal verschwunden gewehsen in der Profil ansicht.

    Aber da fehlt ja noch einiges dran den zwinker

    Das war zumindest mein erster versuch, stats Freunde sollte es ja von dem Freunden der Wohnort oder das Land sein.

    Beispiel wenn zwei freunde aus gleichen stadt sollte erscheinen "Hamburg (2)"

    Allso 2 Freunde in Hamburg..

    Glaube mal das ist bissel viel für mich grumml

    Mit der sql abfrage da weiß ich auch erlich gesagt gerade nicht wo hin damit. ^^

    Naja bin jetzt auf euch angewiesen, wäre klasse wenn ihr mich Helfen könnt. Link kann ich leider nicht geben ist alles offline aufen rechner..

    Danke euch..
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    $qry = db_query('SELECT u.wohnort, COUNT(u.id) AS anzahl FROM prefix_friends f INNER JOIN prefix_user u ON f.fid = u.id WHERE f.uid = '.$uid.' AND u.wohnort != "" GROUP BY u.wohnort ORDER BY u.wohnort');
    $freunde = '';
    while ($fr = db_fetch_assoc($qry)) {
      $freunde .= $fr['wohnort'] . ' (' . $fr['anzahl'] .') ';
    }



    Zuletzt modifiziert von Mairu am 03.05.2011 - 11:34:03
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    1 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    htdocs Mitglied
    Registriert seit
    29.04.2010
    Beiträge
    492
    Beitragswertungen
    17 Beitragspunkte
    hi Dank dir für deine Hilfe aber ich weis gerade nicht wo ich die abfrage reinbauen muss zwinker

    Das müsste ich noch wissen, den rest denke ich mal bekomme ich hin..
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Naja über die Stelle, die du vorhin gepostet hast.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    1Silver Mitglied
    Registriert seit
    05.04.2011
    Beiträge
    41
    Beitragswertungen
    0 Beitragspunkte
    ZitatZitat geschrieben von Mairu

    $qry = db_query('SELECT u.wohnort, COUNT(u.id) AS anzahl FROM prefix_friends f INNER JOIN prefix_user u ON f.fid = u.id WHERE f.uid = '.$uid.' AND u.wohnort != "" GROUP BY u.wohnort ORDER BY u.wohnort');
    $freunde = '';
    while ($fr = db_fetch_assoc($qry)) {
      $freunde .= $fr['wohnort'] . ' (' . $fr['anzahl'] .') ';
    }



    Zuletzt modifiziert von Mairu am 03.05.2011 - 11:34:03



    bei mir klappt es nicht hab bei include/contents/user/profil_edit.php hingefügt

    wo ran liegt das genau wieso bei mir nicht geht!


    MySQL Error:
    1146 : Table 'usr_webq_1.ic1_friends' doesn't exist
    in Query:
    SELECT u.wohnort, COUNT(u.id) AS anzahl FROM ic1_friends f INNER JOIN ic1_user u ON f.fid = u.id WHERE f.uid = 401 AND u.wohnort != "" GROUP BY u.wohnort ORDER BY u.wohnort

    Debug backtrace:
    @ mysql.php:32 -- debug_bt()
    @ mysql.php:67 -- db_check_error(...)
    @ user_details.php:33 -- db_query(...)
    @ user.php:29 -- include(...)
    @ index.php:48 -- require_once(...)


    Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/www/web1/html/ilch/include/includes/func/db/mysql.php on line 91
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Dann hast du nicht meine Freundesliste, da sollte es eine ic1_friends Tabelle geben.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    1Silver Mitglied
    Registriert seit
    05.04.2011
    Beiträge
    41
    Beitragswertungen
    0 Beitragspunkte
    ZitatZitat geschrieben von Mairu

    Dann hast du nicht meine Freundesliste, da sollte es eine ic1_friends Tabelle geben.


    und wo finden ich tabelle ic1_friends!!
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    Treicio gelöschter User
    Gar nicht!
    Da steht klipp und klar was das Problem ist. Nochmal auf Deutsch: "Die Tabelle existiert nicht!"

    Das hast entweder du hast eine andere Freundesliste ( wobei ich keine kenne außer die von Mairu und die die ich mal gemacht habe ) oder einfachd ie Freundesliste nicht installiert!
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    htdocs Mitglied
    Registriert seit
    29.04.2010
    Beiträge
    492
    Beitragswertungen
    17 Beitragspunkte
    und wo finden ich tabelle ic1_friends!!


    Die sollte in deiner mysql datenbank sein.. wenn du die von Mairu (Freundesliste) installiert hast.
    ----------------
    So hier alles nochmal wie das Funktioniert:
    Voraussetzung Mairu´s Freunde Modul..

    Öffne /include/contents/user/user_details.php

    Füge über..
    include('user_infos.php');

    das ein..
     $qry = db_query('SELECT u.wohnort, COUNT(u.id) AS anzahl FROM prefix_friends f INNER JOIN prefix_user u ON f.fid = u.id WHERE f.uid = '.$uid.' AND u.wohnort != "" GROUP BY u.wohnort ORDER BY u.wohnort');
    $freunde = '';
    while ($fr = db_fetch_assoc($qry)) {
      $freunde .= $fr['wohnort'] . ' (' . $fr['anzahl'] .') ';
    }


    füge unter..
    $ar = array (


    das ein..
    'FREUNDE' => $freunde,


    Speichern und hochladen..

    Nun öffne nur noch /include/templates/user/userdetails.htm

    Und baue das hier
    {FREUNDE}


    ein..

    Mehr ist das nicht lächeln

    Danke Mairu

    Edit:

    Deine Freunde sollten aber den Wohnort angegeben haben sonst gehts nicht zwinker

    Aber vieleicht hat man was gutes wie man die Wohnort´s nur anklicken braucht, weil sonst bei einen schreibfehler eines Wohnort´s, ist es als extra Wohnort ausgegeben wird..

    Aber glaube mal das wird eine megadicke Tabelle wenn man alle Wohnorte drin hat lächeln

    Mairu haste da noch ne lösung für?




    Zuletzt modifiziert von htdocs am 04.05.2011 - 10:15:12
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Naja dann müsste man eine Liste aller Städte haben oder einen Service der die bereitstellt, um eine Auswahl zu ermöglichen, ich hab keine.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  16. #16
    User Pic
    htdocs Mitglied
    Registriert seit
    29.04.2010
    Beiträge
    492
    Beitragswertungen
    17 Beitragspunkte
    Naja wenn kann man ja bei der registierung das feld einbauen Wohnort und eventuell einen Hinweis machen..

    Oder einen finden der super langeweile hat und dies hier de.wikipedia.org/wiki/Liste_der_St%C3%A4dtelisten_nach_L%C3%A4ndern

    In tabellen ordnet lächeln

    Sind alle Städe drin von der ganzen welt^^

    Ist es eigendlich möglich das noch so umzusetzen wenn man die zahl anklickt was ja dann in klammern steht die Freunde angezeigt bekommt die in den wohnort wohnen?


    Zuletzt modifiziert von htdocs am 04.05.2011 - 11:13:20
    0 Mitglieder finden den Beitrag gut.
  17. #17
    User Pic
    sarah15 Mitglied
    Registriert seit
    07.02.2009
    Beiträge
    45
    Beitragswertungen
    0 Beitragspunkte
    Hallo!

    Ich habe ein ähnliches Problem. In den userdetails möchte ich die Chars (bis zu 10) der Leute eintragen. Dazu habe ich eine Abfrage gebastelt und eingebaut. Das funktioniert auch so weit bis auf den Schönheitsfehler, daß immer nur ein Char angezeigt wird. Was muss ich ändern, damit alle Chars des Users angezeigt werden.

    $abf10 = "SELECT * FROM prefix_raid_chars WHERE user = '".$uid."' ORDER BY name DESC" ;
    	$erg10 = db_query($abf10);
    	$row10 = db_fetch_assoc($erg10);
    	$charname  ='';
    	if ($row10['user'] <> 0) {
    		while ($res10 = db_fetch_assoc($erg10)) {
    		$charname = $res10['name'];
    		}
    		} else {
    			$charname = "keine Chars angelegt";
    		}
    0 Mitglieder finden den Beitrag gut.
  18. #18
    User Pic
    Tr3icio gelöschter User
    Du musst erstmal in den SQL Code am Ende ein "LIMIT 0, 10" machen für 10 Einträge.
    Und dann nicht einfach $row10 = db_fetch_assoc($erg10) machen sondern es in einer schlife machen:

    while ( $row10 = db_fetch_assoc($erg10) 9 {
        $charname  ='';
        if ($row10['user'] <> 0) {
            while ($res10 = db_fetch_assoc($erg10)) {
            $charname = $res10['name'];
            }
            } else {
                $charname = "keine Chars angelegt";
            }
    }


    Mit while geht er jede Zeile die bei der Abfrage gefunden wird durch. Wenn du keine Schleife machst wird nur der erste gefundene Beitrag zurück gegeben.
    0 Mitglieder finden den Beitrag gut.
  19. #19
    User Pic
    sarah15 Mitglied
    Registriert seit
    07.02.2009
    Beiträge
    45
    Beitragswertungen
    0 Beitragspunkte
    Danke für Deine rasche Antwort.

    Leider ändert Dein Code nicht viel. Es wird nach wie vor nur ein Char angezeigt und wenn die Abfrage kein Ergebnis liefert bleibt mir nun die Anzeige "kein Char angelegt" aus.
    0 Mitglieder finden den Beitrag gut.
  20. #20
    User Pic
    Tr3icio gelöschter User
    Kapierst du es net? Das war ein beispiel weil du so wenig code gepostet hast!
    Du musst in der Schleife natürlich auch ausgeben lassen! Sonst überschreibt er die Variable nur!

    
    if ( mysql_num_rows($erg10) > 0 ) {
    
    while ( $row10 = db_fetch_assoc($erg10) ) {
    
    $charname = $res10['name'];
    echo $charname;
    
    }
    
    } else {
    
    echo $charname = "keine Chars angelegt";
    
    }
    0 Mitglieder finden den Beitrag gut.
  21. #21
    User Pic
    sarah15 Mitglied
    Registriert seit
    07.02.2009
    Beiträge
    45
    Beitragswertungen
    0 Beitragspunkte
    Du hast recht ich verstehe es nicht, aber ich bin ja auch kein Programmierfuzzi.

    Es würde ja halbwegs funktionieren, wenn da nicht immer diese Meldung "Warning: Cannot modify header information: header already sent" kommen würde. Die Anzeige in der user_detail.htm klappt leider auch nicht, denn es wird immer nur ein Name angezeigt, obwohl über echo alle ausgespuckt werden.

    user_details.php
    77<?php 
    #   Copyright by: Manuel Staechele
    #   Support: www.ilch.de
    
    defined ('main') or die ( 'no direct access' );
    
    #if (loggedin()) {
    #// [..]
    #}
    #else {
    #header('Location: http:index.php?self-recht');
    #}
    
    #if ( $_SESSION['authright'] >= -3 ) { 
    #    die ('Zugriff nur für Member'); 
    #}
    
    if ( $_SESSION['authright'] >= -1 ) { 
       header('Location: http:index.php?self-recht'); 
    }
    
    $uid = $menu->get(2);
    
    
    
    include('user_infos.php');
    
    $abf8 = "SELECT * FROM prefix_online WHERE uid = '".$uid."'"; 
    
        $erg8 = db_query($abf8); 
    
        $row8 = db_fetch_assoc($erg8); 
    
        
    
        if(isset($row8['uid'])){ 
    
            $online = '<img src="include/images/forum/status_online.png" alt="online" border="0"/>';
     
        }else{ 
    
            $online = '<img src="include/images/forum/status_offline.png" alt="offline" border="0" />';
     
        }
    
    $abf10 = "SELECT * FROM prefix_raid_chars WHERE user = '".$uid."' ORDER BY name DESC LIMIT 10" ;
    	$erg10 = db_query($abf10);
        $row10 = db_fetch_assoc($erg10); 
        $charname  =''; 
    
        if (mysql_num_rows($erg10) > 0 ) { 
    		while ($res10 = db_fetch_assoc($erg10)) { 
            	echo $charname = $res10['name'];   } 
    		 } else {
    		 $charname = "keine Chars angelegt";
    		  }
    		
    
    
    $ar = array (
    	'UID' => $uid,
    	
      'NAME' => $row['name'],
    	'JOINED'  => date('d.m.Y',$row['regist']),
    	'LASTAK'  => date('d.m.Y - H:i',$row['llogin']),
    	'POSTS'   => $row['posts'],
    	'postpday' => $postpday,
    	'RANG'    => userrang ($row['posts'],$uid),
    	'AVATA'   => $avatar,
    	'ONLINE' => $online,
    	'USERTITEL' => $usertitel,
    	'EMAIL' => $email,
    	'HOMEPAGE' => $homepage,
    	'GESCHLECHT' => $geschlecht,
    	'GEBDATUM' => $gebdatum,
    	'ALTER' => $alter,
    	'WOHNORT' => $wohnort,
    	'FORUMTOPICS' => $row4['forumtopics'],
    	'NEWSTOPICS' => $row5['newstopics'],
    	'NEWSPOSTS' => $row6['newsposts'],
    	'FORUMPOSTS' => $row7['forumposts'],
    	'SIGNATUR' => bbcode($row['sig']),
    	'STAAT' => $staat,
    	
    	'STERNZEICHEN' => $sternzeichen,
    	'GB_EINTRAEGE' => $gb_eintraege,
    	'GALLERIE_EINTRAEGE' => $gallery_eintraege,
    	'ICQ' => $icq,
    	'CHARNAME' => $charname,
    
    );
    
    
    $title = $allgAr['title'].' :: Users :: Details von '.$row['name'];
    $hmenu  = $extented_forum_menu.'<a class="smalfont" href="?user">Users</a><b> &raquo; </b> <a href=index.php?user-details-'.$uid.'>Details von '.$row['name']."</a>".$extented_forum_menu_sufix;
    $design = new design ( $title , $hmenu, 1);
    $design->header();
    
    $tpl = new tpl ( 'user/userdetails' );
    
     
    $l = profilefields_show ( $uid ); 
    
    
    
    $ar['rowspan'] = 4 + substr_count($l, '<tr><td class="');
    
    $ar['profilefields'] = $l;
    $tpl->set_ar_out($ar,0);
    $design->footer();
    
    ?>
    0 Mitglieder finden den Beitrag gut.
  22. #22
    User Pic
    Tr3icio gelöschter User
    Deine erste Zeile ist:

    77<?php


    Vor dem <?php Darf nichts sein! Nichtmal leerzeichen oder leere Zeilen! Sonst können keine Headerdaten mehr bearbeitet oder hinzugefügt werden!
    0 Mitglieder finden den Beitrag gut.
  23. #23
    User Pic
    sarah15 Mitglied
    Registriert seit
    07.02.2009
    Beiträge
    45
    Beitragswertungen
    0 Beitragspunkte
    ups, das gehört da natürlich nicht hinein!

    Nun möchte ich aber noch eine Ausgabe in der htm über das Feld CHARNAME. Wie bekomme ich das hin?
    0 Mitglieder finden den Beitrag gut.
  24. #24
    User Pic
    Tr3icio gelöschter User
    $tpl->set('', $); // Der erste Parameter ist der Platzhalter ( Beispiel: {BLA} [ OHNE die {} ! ] ). Der 2. Parameter der Wert der dort hin soll.
    0 Mitglieder finden den Beitrag gut.
  25. #25
    User Pic
    sarah15 Mitglied
    Registriert seit
    07.02.2009
    Beiträge
    45
    Beitragswertungen
    0 Beitragspunkte
    ich bekomme es einfach nicht hin. jetzt wird alles 11x durchlaufen und alle profilfelder werden wiederholt angezeigt jedesmal mit einem anderen charnamen.
    0 Mitglieder finden den Beitrag gut.
  26. #26
    User Pic
    Tr3icio gelöschter User
    Lol was hast gemacht? :-P
    Du hättest einfach:

    $charname = "";
    if (mysql_num_rows($erg10) > 0 ) {
            while ($res10 = db_fetch_assoc($erg10)) {
                $charname .= $res10['name'] . '<br />';   }
             } else {
             $charname = "keine Chars angelegt";
              }
    $tpl->set('CHARNAME', $charname);


    schön würden die charackternamen ausgegeben werden!
    0 Mitglieder finden den Beitrag gut.
  27. #27
    User Pic
    sarah15 Mitglied
    Registriert seit
    07.02.2009
    Beiträge
    45
    Beitragswertungen
    0 Beitragspunkte
    danke jetzt funkt es!

    $charname .= $res10['name'] . '<br />';
    daran lag es, habe die punkte nicht gemacht. aber wie gesagt ich bin laie.
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Allgemein

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten