Reply to Re: query db to return all related rows to a given row and all related to those and so on and so on....

Your name:

Reply:


Posted by Jerry Stuckle on 11/07/54 11:56

Rik wrote:
> monomaniac21 wrote:
>
>>hi all
>>
>>On a networking site i am working on each user has their own id and
>>the id of another person who they are linked to. what i want to do is
>>to be able to pull up a list of everyone linked to one person and all
>>the ppl linked to them. So the query would work something like get id
>>of linked get linked row get id of linked to this person get of
>>person get id of linked to person.... this needs to go on until it
>>reaches one person who is not linked to anybody. can anyone tell me
>>how to achieve that with a control loop?
>
>
> First of all, it's not clear to me what you want exactly. You want ALL
> persons linked to one, but stop as soon as one of them is not linked to
> anyone? This doesn't make sense to me, unless the structure is a clear tree,
> with only 'big boss' not linked to anyone for each person in the table. A
> bit of insight in your database structure would help.
>
> If you've got a hierarchical tree, then maybe this site will give you some
> insight:
> http://dev.mysql.com/tech-resources/articles/hierarchical-data.html
>
> If it's not that simple, a self_reference in PHP would almost certainly be
> required.
> Pseudo code (all I can do without a proper database explanation):
>
> function get_persons($id){
> global $database, $linked;
> if( return false;
> $persons = $database->users_linked($id);
> if(!$persons) return false;
> foreach($persons as $person){
> $linked[] = $person;
> if(get_person($person)===false) return false;
> }
> }
> $linked = array();
> get_persons($id);
>
> Grtz,

Rik.

I've seen this type of linking before. It's not really hierarchical -
its a linkage of peers. For instance, A could be linked to B and C, B
to D and E, and E back to A and B.

A lot depends on the database he's using. The more advanced ones can
handle this type of query all in SQL. But it's a heck of a query :-).



--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex@attglobal.net
==================

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация