15-12-2004, 20:12
|
|
|
חבר מתאריך: 20.02.03
הודעות: 2,396
|
|
הוא כתב שיש לו את הנתון ששומר למי התגובה...
ציטוט:
במקור נכתב על ידי Eran
הנתונים:
ID- זה מספר ייחודי לכל הודעה/תגובה.
Re- זה מספר ה ID של ההודעה/תגובה אליה הוא מגיב.
|
בכל אופן ערן... אם אתה מתעקש על רקורסיה (לדעתי בזבוז משאבים נוראי...) אז הדרך (שלי לפחות) היא בצורה הבאה:
אם מדובר על הודעה ראשית, שים בתוך Re את המספר 0.
לאחר מכן תבנה פונקציה שתעבוד בצורה הבאה (זה פסיאודו-קוד... לא קוד מלא) :
קוד:
function recursive($id)
{
msgs = select * from tbl where Re=$id;
foreach(msgs)
{
print msgs->title;
recuresiv(msgs->Id);
}
}
הרעיון הוא שאתה קורא לפונקציה הזאת עם המספר 0, ככה דבר ראשון- היא מוציאה את כל האבות. לאחר מכן עבור כל אבא- היא מדפיסה אותו וקוראת לעצמה מחדש (אבל עם האיידי של האבא) כלומר- ההוצאה הבאה תהיה של כל הבנים הראשיים של אותו אבא, וההמשך- ברקורסיה.
בהצלחה, דקל
_____________________________________
"מתכנת זה אדם שפותר בעיה שעל קיומה לא ידעת, בדרך שאינך מבין"
|