PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : مشکل در کامپوننت xmap



mr_aliagha
03-06-2008, 03:27 PM
با سلام خدمت دوستان.
من این کامپوننت رو نصب کردم رو مامبو 4.6.2 فارسی ، مشکلی نداشت ، رفتم سایتش دیدم پلاگین فایربرد و remository رو هم داره ( جفتش آخرین ورژن فارسی شده توسط تیم مامبو لرن رو روی مامبو نصب دارم) . بعد از اینکه این پلاگین ها رو نصب کردم با ارور Warning: Invalid argument supplied for foreach() روبرو شدم که مربوط به درست نبودن نام متغیر ها هست احتمالا ، کد ها رو می ذارم ، ببینین کسی می دونه درستش چی هست؟! ( احتمال می دم این xmap پلاگین هاش رو برای جوملا نوشته بوده...)
فقط قبل از اون یه مسئله مهم و اون اینکه این کامپوننت مشکل امنیتی که نداره که؟ آخه خیلی رو این مورد حساسم ...
اول از همه ارور ها:


Warning: Invalid argument supplied for foreach() in C:\wampserver\<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b> xmap\plugins\remository.plugin.php on line 43

Warning: Invalid argument supplied for foreach() in C:\wampserver\<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b> xmap\plugins\remository.plugin.php on line 63

Warning: Invalid argument supplied for foreach() in C:\wampserver\<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b> xmap\plugins\fireboard.plugin.php on line 36

Warning: Invalid argument supplied for foreach() in C:\wampserver\<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b> xmap\plugins\fireboard.plugin.php on line 53

Warning: Invalid argument supplied for foreach() in C:\wampserver\<b><font color=red>فقط کاربران عضو انجمن می توانند لینک ها را مشاهده کنند</font></b> xmap\plugins\fireboard.plugin.php on line 53

حالا خط هایی که گیر داشته از فایربرد:



foreach($cats as $cat)
{
$node = new stdclass;
$node-&gt;id = $parent-&gt;id;
$node-&gt;name = $cat-&gt;cat_title;
$node-&gt;link = $parent-&gt;link.&#039;&amp;amp;func=showcat&amp;amp;catid=&#039;.$cat-&gt;cat_id;
$node-&gt;tree = $this-&gt;getTree($xmap,$parent,$cat-&gt;cat_id);
$list[$cat-&gt;cat_id] = $node;
}
foreach($forums as $forum) {

// sort forums into categories
if( !isset($list[$forum-&gt;cat_id]) ) continue;

$node = new stdclass;
$node-&gt;id = $parent-&gt;id;
$node-&gt;name = $forum-&gt;forum_name;
$node-&gt;modified = intval($forum-&gt;modified);
$node-&gt;link = $parent-&gt;link.&#039;&amp;amp;func=view&amp;amp;id=&#039;.$forum-&gt;forum_id.&#039;&amp;amp;catid=&#039;.$forum-&gt;cat_id;
$list[$forum-&gt;cat_id]-&gt;tree&#91;] = $node;
}

و کد های ایراد دار در قسمت مربوط به ریموسیتوری:


foreach($cats as $cat) {
$node = new stdclass;
$node-&gt;id = $parent-&gt;id;
$node-&gt;pid = $cat-&gt;parentid;
$node-&gt;name = $cat-&gt;windowtitle;
$node-&gt;link = $parent-&gt;link.&#039;&amp;amp;func=select&amp;amp;id=&#039;.$cat-&gt;id;
$node-&gt;tree = array();

$list[$cat-&gt;id] = $node;
}
foreach($cats as $file) {
$node = new stdclass;
$node-&gt;id = $parent-&gt;id;
$node-&gt;name = $file-&gt;windowtitle;
$node-&gt;link = $parent-&gt;link.&#039;&amp;amp;func=fileinfo&amp;amp;id=&#039;.$file-&gt;id;
$node-&gt;tree = array();
$list[$file-&gt;containerid]-&gt;tree&#91;] = $node;
}


با تشکر.

mr_aliagha
03-06-2008, 03:43 PM
یه سوال دیگه و اون اینکه xmapبا SEF که مشکلی نداره؟ آخه فعلا سایت رو لوکال هست نمی تونم SEF رو فعال کنم ...

mhadaily
03-07-2008, 06:13 AM
فایربرد که کلا برای جوملا هست و البته تیم اون رو برای مامبو آماده کرده بود ...

در مورد SEF هم مشکلی نداره

در مورد خطا های بالا هم همون خطا رو جستجو کنید

mr_aliagha
03-07-2008, 06:48 AM
فایربرد که کلا برای جوملا هست و البته تیم اون رو برای مامبو آماده کرده بود ...

در مورد SEF هم مشکلی نداره

در مورد خطا های بالا هم همون خطا رو جستجو کنید

منظورتون اینه که تو انجمن سرچ کنم ؟ قبلا مطرح شده؟!
می خواستم فقط ببینم تو فایربرد چه تغییراتی صورت گرفته و همین طور ریموسیتوری ، تا اون تغییرات رو تو این پلاگین ها هم اعمال کنم !!!
در مورد ریموسیتوری که قضیه بد تر از فایربرد هست ، چون پلاگین xmap مربوط به فایربرد کار خودش رو انجام می ده اما 2-3 تا warning هم می ده، اما پلاگین xmap که مربوط به ریموسیتوری هست ، کارش رو اصلا انجام نمی ده ، فقط جاش warning می ده...
فکر کنم تو ریموسیتوری که توسط مامبو لرن منتشر شده ، علاوه بر ترجمه کرده کارای دیگه ای هم صورت گرفته ، کدش یه جاهاییش تغییر داده شده...
در کل ، اگه تغییرات صورت گرفته تو این دو کامپوننت منتشر شده توسط تیم رو اعلام کنید ، می شه این پلاگین ها رو درست کرد و منتشرشون کرد ، چون خیلی به درد همه می خوره...

mhadaily
03-07-2008, 12:14 PM
تغییرات داده شده مربوط به برنامه نویسی منتشر نخواهد شد چون اصولا کار برنامه نویسی در این انجمن مطرح نخواهد شد

اگر نیاز هست می تونید بدید براتونیم سازگار کنیم با اینکه خودتون بشید و دست بکار بشید و آماده شد خوشحال میشیم که به ما هم بدید

یاعلی

mr_aliagha
03-07-2008, 03:00 PM
خودم احتمالا از پسش بر میام ، به شرطی که متوجه بشم به منظور سازگاری این کامپوننت ها با مامبو به صورت کلی چه کار هایی صورت گرفته!! آخه برعکس دو تا از گسترده ترین کامپوننت ها هم هست، ماشالا هر کدوم خودش یه پا CMS ه ;) خودم بخوام ندونسته بگردم پیر می شم احتمالا ???. در صورت امکان برام پیغام خصوصی بذارین چون فکر کنم Xmap ارزش درست و سازگار شدن رو داشته باشه...
با تشکر.

mr_aliagha
03-08-2008, 10:58 PM
کسی نمی دونه چیکار باید بکنم؟! با یه if می شه warning ها رو حل کرد ، اما خوب دراصل اینجوری صورت مسئله رو پاک می کنیم!! چون پلاگین ها کار نمی کنه اون وقت!

iransbs
03-09-2008, 03:16 AM
با سلام
دوست عزیز توجه داشته باشید در صورتی که یک Query از بانک اطلاعاتی داده ای برای برگشت نداشته باشد، توسط تابع LoadObjectList مقدار Null را ارسال می کند و صرفا دلیل بر اینکه برنامه به درستی کار نکند نمی باشد :)
برای رفع این مشکل می توانید به روش زیر عمل کنید :

$VAR = isset($VAR) ? $VAR : array();
توجه داشته باشید که VAR را با متغیر مورد نیاز foreach عوض کنید.

همان طور که در بالا اشاره کردم، این عمل تنها جهت قطع شدن خطا می باشد و دلیلی برای کار نکردن کامپوننت یا ... نمی باشد.
برای اطمینان بیشتر می توانید

echo $database-&gt;getQuery();
را بعد از

$database-&gt;setQuery($query);
قرار دهید تا Query خروجی را به شما نشان دهد، در این صورت شما می توانید بررسی کنید که آیا برنامه به درستی کار می کند یا خیر.



موفق و پیروز باشید
یا علی

mr_aliagha
03-13-2008, 09:43 AM
دست درد نکنه، با همین روش مشکلش رو پیدا کردم و حل شد...