Recommended Posts

با سلام به کارشناسان و کاربران جومینا.

 

من با DJClassifieds 2.2.1  خود به مشکل خورد.

اتفاق پیش از ایجاد مشکل : از نسخه قدیمی تر به جدیدتر بروز رسانی کردم که نشد و از مدیریت جوملا پاک کردم و با بهم رختگی مواجه شدم و سپس اقدام به بارگذاری دستی فایل ها و ایجاد جداول در دیتابیس نمود.

 

مشکل  :

1- در هنگام درج آگهی جدید توسط کاربران گزینه مجموعه ها فعال و نمایش داده نمی شود و به همین دلیل زیر مجموعه ها (فیلدهای اضافی) نیز فعال و نمایش داده نمی شود.

2-از مدیریت سایت خودم هم اقدام میکنم زیر مجموعه ها (فیلدهای اضافی)فعال و نمایش داده نمی شود.

3- آگهی های که از قبل داشتم را به هر نحوه ویرایش میکنم ذخیره نمی شود وارور زیر را نمایش می دهد.

متن ارور مورد 3 :

DJClassifiedsTableItems: :ذخیره سازی ناموفق
Unknown column 'promotions' in 'field list' SQL=UPDATE `jjxc4_djcf_items` SET `cat_id`='2',`user_id`='762',`name`='آگهی جدید من',`description`='

 

از همه شما دوستان تقاضا دارم در صورت امکان راهنمایی بفرمایید.

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
8 ساعت قبل, pourmoshtagh گفت:

با سلام به کارشناسان و کاربران جومینا.

 

من با DJClassifieds 2.2.1  خود به مشکل خورد.

اتفاق پیش از ایجاد مشکل : از نسخه قدیمی تر به جدیدتر بروز رسانی کردم که نشد و از مدیریت جوملا پاک کردم و با بهم رختگی مواجه شدم و سپس اقدام به بارگذاری دستی فایل ها و ایجاد جداول در دیتابیس نمود.

 

مشکل  :

1- در هنگام درج آگهی جدید توسط کاربران گزینه مجموعه ها فعال و نمایش داده نمی شود و به همین دلیل زیر مجموعه ها (فیلدهای اضافی) نیز فعال و نمایش داده نمی شود.

2-از مدیریت سایت خودم هم اقدام میکنم زیر مجموعه ها (فیلدهای اضافی)فعال و نمایش داده نمی شود.

3- آگهی های که از قبل داشتم را به هر نحوه ویرایش میکنم ذخیره نمی شود وارور زیر را نمایش می دهد.

متن ارور مورد 3 :

DJClassifiedsTableItems: :ذخیره سازی ناموفق
Unknown column 'promotions' in 'field list' SQL=UPDATE `jjxc4_djcf_items` SET `cat_id`='2',`user_id`='762',`name`='آگهی جدید من',`description`='

 

از همه شما دوستان تقاضا دارم در صورت امکان راهنمایی بفرمایید.

سلام
دوست عزیز ایکاش قبل از هرکاری و هر تغییری از سایتتان بک آپ کامل می گرفتید ( لااقل فقط از دیتابیس بک آپ می گرفتید ) و بک آپ را برمی گردانید. 

بارگذاری دستی فایل ها و ایجاد دستی جداول در دیتابیس کار مشکلی هست و ممکنه با مشکلات زیادی برخورد کنید

خطایی که فرمودید احتمالاً شما باید در دیتابیستون جدول jjxc4_djcf_items یا ستون promotions ایجاد نکردید یا به آن مقدار اشتباه دادید. اگر این ستون را ایجاد نکردید که باید ایجاد کنید و برای مقادیر آن هم یا هیچی ننویسید و ستون promotions مربوط به کاربر موردنظر را یا خالی بگذارید و یا از مقادیر زیر استفاده کنید
p_first
p_bold
p_border
p_bg
p_special

همچنین شما باید در دیتابیستون یک جدول promotions هم داشته باشید به نامjjxc4_djcf_promotions

بقیه مشکلات را نمی دانم و نمی دانم آیا جوملا را آپدیت کردید یا دست به جوملا نزنید و بر اساس اینکه این تاپیک را در بخش جوملا 2.5 ایجاد کردید جوملایتان همچنان 2.5 هست یا خیر

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

با سلام مجدد به کارشناسان و کاربران جومینا.

 بیشتر مشکلات بالا برطرف شد ولی یک مشکل هنوز باقیست.

 

مشکل  :

1- در هنگام درج آگهی جدید توسط کاربران گزینه مجموعه ها فعال و نمایش داده نمی شود و به همین دلیل زیر مجموعه ها (فیلدهای اضافی) نیز فعال و نمایش داده نمی شود.

2-جدول مدت زمان نمایش آگهی را در دیتابیس به چه نامی میبایست ایجاد کنم و دارای چه پارامتر و مقادیری باید باشد؟

 

توضیح اینکه : جوملای من 2.5 است و دستی در خود جوملا به هیچ وجه نبردم.

از همه شما دوستان تقاضا دارم در صورت امکان راهنمایی بفرمایید.

ویرایش شده در توسط pourmoshtagh

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
33 minutes قبل , pourmoshtagh گفت:

با سلام مجدد به کارشناسان و کاربران جومینا.

 بیشتر مشکلات بالا برطرف شد ولی یک مشکل هنوز باقیست.

 

مشکل  :

1- در هنگام درج آگهی جدید توسط کاربران گزینه مجموعه ها فعال و نمایش داده نمی شود و به همین دلیل زیر مجموعه ها (فیلدهای اضافی) نیز فعال و نمایش داده نمی شود.

2-جدول مدت زمان نمایش آگهی را در دیتابیس به چه نامی میبایست ایجاد کنم و دارای چه پارامتر و مقادیری باید باشد؟

 

توضیح اینکه : جوملای من 2.5 است و دستی در خود جوملا به هیچ وجه نبردم.

از همه شما دوستان تقاضا دارم در صورت امکان راهنمایی بفرمایید.

سلام
دوست عزیز جدول مدت زمان نمایش برای شما اگر دیتابیس و پسوند جداول همان هست به صورت jjxc4_djcf_days می باشد

این هم از پارامترها و مقادیر
do.php?imgf=91287019d0481.jpg

راستی شاید بهتر باشد یک نسخه از افزونه DJClassifieds در لوکال و یک جوملای خام نصب کنید چند آگهی تستی خودتان وارد کنید اینطوری با جداول راحتتر آشنا می شید همچنین سایر ایرادات و مشکلات را نیز سریعتر حل می کنید

ویرایش شده در توسط bashka

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

همه جداول را طبق راهنمایی شما بارگذاری نمودم مشکلات مرتفع شد ولی مشکل اول هنوز پا برجاست

 

مشکل  :

1- در هنگام درج آگهی جدید توسط کاربران گزینه مجموعه ها فعال و نمایش داده نمی شود و به همین دلیل زیر مجموعه ها (فیلدهای اضافی) نیز فعال و نمایش داده نمی شود.

 

بنظرتون اگر از کدها باشه در کدوم فایل از هاست خود میبایست به دنبالش بگردم و اصلاً باید دنبال چه دستور یا کدی باشم.

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
7 ساعت قبل, pourmoshtagh گفت:

همه جداول را طبق راهنمایی شما بارگذاری نمودم مشکلات مرتفع شد ولی مشکل اول هنوز پا برجاست

 

مشکل  :

1- در هنگام درج آگهی جدید توسط کاربران گزینه مجموعه ها فعال و نمایش داده نمی شود و به همین دلیل زیر مجموعه ها (فیلدهای اضافی) نیز فعال و نمایش داده نمی شود.

 

بنظرتون اگر از کدها باشه در کدوم فایل از هاست خود میبایست به دنبالش بگردم و اصلاً باید دنبال چه دستور یا کدی باشم.

سلام مجدد
یعنی الان شما جداول مربوط به مجموعه به صورت jjxc4_djcf_categories و jjxc4_djcf_categories_groups را دارید و مجموعه و زیرمجموعه تعریف کردید و موجود هستند ولی موقعی که کاربر می خواهد آگهی جدید ثبت کنه فیلد مجموعه و زیرمجموعه موجود نیستند؟ که کاربر انتخاب کند؟

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

بله.دقیقا به همین صورت است.

یعنی جداول مذکور موجود است و دارای فیلد هایی است این فیلد ها در مجموعه ها و زیر مجموعه ها از مدیریت سایت و کامپپوننت دیجیکلاسیفیلد موجود است و قابل ثبت برای آگهی ولی کاربران که وارد کاربری خودشان میشوند در سایت و در هنگام ثبت آگهی جدید، مجموعه و زیر مجموعه ها نمایش داده نمیشود در نتیجه نمیتوانند آگهی جدیدیی ثبت نمایند.

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

کد های این آدرس را چک بفرمایید .شاید کلید معمای من در این کدها باشد.(اطلاعات من بسیار کم است و نمیتوانم تشخیص بدهم برای این امر چه کدی باید چه باشد)

HOSTNAME/components/com_djclassifieds/controllers/additem.php

ممنون میشوم مرا راهنمایی بفرمایید.

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

با سلام مجدد خدمت کارشناسان و کاربران جومینا .

پیرو همین موضوع میخواستم بپرسم محل این کدها رو کسی میتونه راهنمایی کنه کجاست؟

1- از قسمت مدیریت سایت ((یادآووری : مجموعه ها نشان داده میشود ولی فیلد اضافی نمایش داده نمی شود)) و در هنگام ثبت آگهی جدید کد زیر هست که مشکل دارد:

<tr>
                <td class="key" width="100" align="right">
                    فیلدهای اضافی        
                </td>
                <td>
                    <div id="ex_fields">انتخاب مجموعه</div>                    
                </td>
            </tr>

2- از قسمت سایت و بخش کاربران ((یادآووری : مجموعه ها نشان داده نمیشود و به تبع آن فیلد اضافی نیز نمایش داده نمی شود))در هنگام ثبت آگهی جدید کد زیر هست که مشکل دارد :

<div class="djform_field">
                    <select autocomplete="off" class="required invalid" id="cat_0" style="width:210px" name="cats[]" onchange="new_cat(0,this.value);getFields(this.value);" aria-required="true" required="required" aria-invalid="true"><option value="">مجموعه</option></select><div style="clear:both"></div>
                <div id="after_cat_0"></div>
                <script type="text/javascript">var cats=new Array();cats[0]='<select style="width:210px" name="cats[]" id="cat_0" onchange="new_cat(0,this.value);getFields(this.value);"></select><div id="after_cat_0"></div>';var current=0;function new_cat(parent,a_parent){if(cats[a_parent]){document.id('after_cat_'+parent).innerHTML=cats[a_parent];document.id('cat_'+parent).value=a_parent;}else{document.id('after_cat_'+parent).innerHTML='';document.id('cat_'+parent).value=a_parent;}}</script>
                    
                </div>

-----------------------------------------------------------------------------------------------------

نمونه صحیح همچین گزینه هایی موقعیت آگهی هست که در هر دوقسمت درست کار میکند و جهت اینکه بتونم یه نمونه صحیح را ذکر کنم تا شاید شما عزیزان بتوانید بهتر مرا راهنمایی نمایید.

1- کد صحیح و با عملکرد صحیح ، موقعیت آگهی بصورت زیر است:

<tr>                
                <td class="label" id="category_l" width="100" align="right">
                    موقعیت                    
                </td>
                <td class="region">
                    <select id="reg_0" style="width:210px" name="regions[]" onchange="new_reg(0,this.value);"><option value="">انتخاب موقعیت</option><option value="1">تهران</option><option value="412">شریعتی جنوبی</option><option value="413">شکوفه شمالی</option><option value="414">شکوفه جنوبی</option><option value="415">نعمت آباد</option><option value="472">مشهد</option><option value="473">اصفهان</option><option value="474">شیراز</option><option value="475">کرمان</option><option value="476">تبریز</option><option value="477">ارومیه</option><option value="478">اردبیل</option><option value="479">رشت</option><option value="480">ساری</option><option value="481">گرگان</option><option value="482">بجنورد</option><option value="483">سمنان</option><option value="484">اراک</option><option value="485">قم</option>..............................................<option value="486">یزد</option><option value="487">کاشان</option><option value="488">کرج</option><option value="489">قزوین</option><option value="490">زنجان</option><option value="491">کرمانشاه</option><option value="492">ایلام</option><option value="493">یاسوج</option><option value="494">بندرعباس</option><option value="495">کیش</option><option value="496">قشمvalue="442">عباس آباد</option><option value="443">علی آباد</option></select><div id="after_reg_421"></div>';regs[444]='<div style="clear:both"></div><select style="width:210px" name="regions[]" id="reg_444" onchange="new_reg(444,this.value);"><option value=""> - - - </option><option value="445">شهرک فرهنگیان</option><option value="446">شهرک آزادی</option><option value="447">تهرانسر شرقی</option><option value="448">تهرانسر شمالی</option><option value="449">شهرک پاسداران</option><option value="450">تهرانسر مرکزی</option><option value="451">باشگاه نفت</option><option value="452">تهرانسر غربی</option><option value="453">شهرک دریا</option><option value="454">شهرک استقلال</option><option value="455">شهرک دانشگاه تهران</option><option value="456">چیتگر شمالی</option><option value="457">شهرک شهرداری</option><option value="458">ویلا شهر</option><option value="459">شهرک غزالی</option><option value="460">وردآورد</option><option value="461">چیتگر جنوبی</option></select><div id="after_reg_444"></div>';var current=0;function new_reg(parent,a_parent){if(regs[a_parent]){$('after_reg_'+parent).innerHTML=regs[a_parent];$('reg_'+parent).value=a_parent;}else{$('after_reg_'+parent).innerHTML='';$('reg_'+parent).value=a_parent;}}</script>
                            
                </td>

    </tr> 

2- کد صحیح و با عملکرد صحیح ، موقعیت آگهی بصورت زیر است:

<div class="djform_row">
                                    <label class="label Tips1" for="reg_0" id="reg_0-lbl" title="" aria-invalid="false">
                        موقعیت *
                        <img src="http://mysite.com//components/com_djclassifieds/assets/images/tip.png" alt="?">
                    </label>                                                                   
                                <div class="djform_field">
                    <select autocomplete="off" id="reg_0" class="required" style="width:210px" name="regions[]" onchange="new_reg(0,this.value);" aria-required="true" required="required" aria-invalid="false"><option value="">موقعیت</option><option value="484">اراک</option><option value="478">اردبیل</option><option value="477">ارومیه</option><option value="473">اصفهان</option><option value="498">اهواز</option><option value="492">ایلام</option><option value="482">بجنورد</option><option value="494">بندرعباس</option><option value="497">بوشهر</option><option value="500">بیرجند</option>........................(((تمام موقعیت هایی تعریف شده)))))........................<option value="456">چیتگر شمالی</option><option value="446">شهرک آزادی</option><option value="454">شهرک استقلال</option><option value="449">شهرک پاسداران</option><option value="455">شهرک دانشگاه تهران</option><option value="453">شهرک دریا</option><option value="457">شهرک شهرداری</option><option value="459">شهرک غزالی</option><option value="445">شهرک فرهنگیان</option><option value="460">وردآورد</option><option value="458">ویلا شهر</option></select><div id="after_reg_444"></div>';var current=0;function new_reg(parent,a_parent){if(regs[a_parent]){document.id('after_reg_'+parent).innerHTML=regs[a_parent];document.id('reg_'+parent).value=a_parent;}else{document.id('after_reg_'+parent).innerHTML='';document.id('reg_'+parent).value=a_parent;}}</script>                            
                </div>
                <div style="clear:both"></div>

</div>

   لطفا راهنمایی کنید فایل های این کدها را کجا پیدا کنم.

سپاس از راهنمایی تان.       

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
5 ساعت قبل, pourmoshtagh گفت:

با سلام مجدد خدمت کارشناسان و کاربران جومینا .

پیرو همین موضوع میخواستم بپرسم محل این کدها رو کسی میتونه راهنمایی کنه کجاست؟

1- از قسمت مدیریت سایت ((یادآووری : مجموعه ها نشان داده میشود ولی فیلد اضافی نمایش داده نمی شود)) و در هنگام ثبت آگهی جدید کد زیر هست که مشکل دارد:

<tr>
                <td class="key" width="100" align="right">
                    فیلدهای اضافی        
                </td>
                <td>
                    <div id="ex_fields">انتخاب مجموعه</div>                    
                </td>
            </tr>

2- از قسمت سایت و بخش کاربران ((یادآووری : مجموعه ها نشان داده نمیشود و به تبع آن فیلد اضافی نیز نمایش داده نمی شود))در هنگام ثبت آگهی جدید کد زیر هست که مشکل دارد :

<div class="djform_field">
                    <select autocomplete="off" class="required invalid" id="cat_0" style="width:210px" name="cats[]" onchange="new_cat(0,this.value);getFields(this.value);" aria-required="true" required="required" aria-invalid="true"><option value="">مجموعه</option></select><div style="clear:both"></div>
                <div id="after_cat_0"></div>
                <script type="text/javascript">var cats=new Array();cats[0]='<select style="width:210px" name="cats[]" id="cat_0" onchange="new_cat(0,this.value);getFields(this.value);"></select><div id="after_cat_0"></div>';var current=0;function new_cat(parent,a_parent){if(cats[a_parent]){document.id('after_cat_'+parent).innerHTML=cats[a_parent];document.id('cat_'+parent).value=a_parent;}else{document.id('after_cat_'+parent).innerHTML='';document.id('cat_'+parent).value=a_parent;}}</script>
                    
                </div>

-----------------------------------------------------------------------------------------------------

نمونه صحیح همچین گزینه هایی موقعیت آگهی هست که در هر دوقسمت درست کار میکند و جهت اینکه بتونم یه نمونه صحیح را ذکر کنم تا شاید شما عزیزان بتوانید بهتر مرا راهنمایی نمایید.

1- کد صحیح و با عملکرد صحیح ، موقعیت آگهی بصورت زیر است:

<tr>                
                <td class="label" id="category_l" width="100" align="right">
                    موقعیت                    
                </td>
                <td class="region">
                    <select id="reg_0" style="width:210px" name="regions[]" onchange="new_reg(0,this.value);"><option value="">انتخاب موقعیت</option><option value="1">تهران</option><option value="412">شریعتی جنوبی</option><option value="413">شکوفه شمالی</option><option value="414">شکوفه جنوبی</option><option value="415">نعمت آباد</option><option value="472">مشهد</option><option value="473">اصفهان</option><option value="474">شیراز</option><option value="475">کرمان</option><option value="476">تبریز</option><option value="477">ارومیه</option><option value="478">اردبیل</option><option value="479">رشت</option><option value="480">ساری</option><option value="481">گرگان</option><option value="482">بجنورد</option><option value="483">سمنان</option><option value="484">اراک</option><option value="485">قم</option>..............................................<option value="486">یزد</option><option value="487">کاشان</option><option value="488">کرج</option><option value="489">قزوین</option><option value="490">زنجان</option><option value="491">کرمانشاه</option><option value="492">ایلام</option><option value="493">یاسوج</option><option value="494">بندرعباس</option><option value="495">کیش</option><option value="496">قشمvalue="442">عباس آباد</option><option value="443">علی آباد</option></select><div id="after_reg_421"></div>';regs[444]='<div style="clear:both"></div><select style="width:210px" name="regions[]" id="reg_444" onchange="new_reg(444,this.value);"><option value=""> - - - </option><option value="445">شهرک فرهنگیان</option><option value="446">شهرک آزادی</option><option value="447">تهرانسر شرقی</option><option value="448">تهرانسر شمالی</option><option value="449">شهرک پاسداران</option><option value="450">تهرانسر مرکزی</option><option value="451">باشگاه نفت</option><option value="452">تهرانسر غربی</option><option value="453">شهرک دریا</option><option value="454">شهرک استقلال</option><option value="455">شهرک دانشگاه تهران</option><option value="456">چیتگر شمالی</option><option value="457">شهرک شهرداری</option><option value="458">ویلا شهر</option><option value="459">شهرک غزالی</option><option value="460">وردآورد</option><option value="461">چیتگر جنوبی</option></select><div id="after_reg_444"></div>';var current=0;function new_reg(parent,a_parent){if(regs[a_parent]){$('after_reg_'+parent).innerHTML=regs[a_parent];$('reg_'+parent).value=a_parent;}else{$('after_reg_'+parent).innerHTML='';$('reg_'+parent).value=a_parent;}}</script>
                            
                </td>

    </tr> 

2- کد صحیح و با عملکرد صحیح ، موقعیت آگهی بصورت زیر است:

<div class="djform_row">
                                    <label class="label Tips1" for="reg_0" id="reg_0-lbl" title="" aria-invalid="false">
                        موقعیت *
                        <img src="http://mysite.com//components/com_djclassifieds/assets/images/tip.png" alt="?">
                    </label>                                                                   
                                <div class="djform_field">
                    <select autocomplete="off" id="reg_0" class="required" style="width:210px" name="regions[]" onchange="new_reg(0,this.value);" aria-required="true" required="required" aria-invalid="false"><option value="">موقعیت</option><option value="484">اراک</option><option value="478">اردبیل</option><option value="477">ارومیه</option><option value="473">اصفهان</option><option value="498">اهواز</option><option value="492">ایلام</option><option value="482">بجنورد</option><option value="494">بندرعباس</option><option value="497">بوشهر</option><option value="500">بیرجند</option>........................(((تمام موقعیت هایی تعریف شده)))))........................<option value="456">چیتگر شمالی</option><option value="446">شهرک آزادی</option><option value="454">شهرک استقلال</option><option value="449">شهرک پاسداران</option><option value="455">شهرک دانشگاه تهران</option><option value="453">شهرک دریا</option><option value="457">شهرک شهرداری</option><option value="459">شهرک غزالی</option><option value="445">شهرک فرهنگیان</option><option value="460">وردآورد</option><option value="458">ویلا شهر</option></select><div id="after_reg_444"></div>';var current=0;function new_reg(parent,a_parent){if(regs[a_parent]){document.id('after_reg_'+parent).innerHTML=regs[a_parent];document.id('reg_'+parent).value=a_parent;}else{document.id('after_reg_'+parent).innerHTML='';document.id('reg_'+parent).value=a_parent;}}</script>                            
                </div>
                <div style="clear:both"></div>

</div>

   لطفا راهنمایی کنید فایل های این کدها را کجا پیدا کنم.

سپاس از راهنمایی تان.       

سلام
دوست عزیز بر اساس این مقاله عمل کنید ببینید می تونید کدهای موردنظرتان را پیدا کنید
http://forum.joomina.ir/topic/33620-پیدا-کردن-کدها-در-اسکریپت-های-اوپن-سورس-یک-راه-حل/#comment-154593

 

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
1 ساعت قبل, pourmoshtagh گفت:

سلام

مشکل هنوز پابرجاست...

:(

سلام
دوست عزیز الان سایت شما آنلاین و روی هاست هست؟ up هست؟ اگر اینطور هست آدرس سایت را بدید

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

مشکل قبل مرتفع شد ولی بعد از کلیک روی ذخیره آگهی به این ارور رسید :

Fatal error: Call to undefined method DJClassifiedsRegion::getParentPath() in /home/sitam/public_html/components/com_djclassifieds/controllers/additem.php on line 769

 

و کد در این خط به این شرح می باشد:

if($row->region_id){
                $reg_path = DJClassifiedsRegion::getParentPath($row->region_id);
                for($r=count($reg_path)-1;$r>=0;$r--){
                    if($reg_path[$r]->country){
                        $address = $reg_path[$r]->name;
                    }
                    if($reg_path[$r]->city){
                        if($address){    $address .= ', ';}                    
                        $address .= $reg_path[$r]->name;
                                            
                    }                

                }

لطفا راهنمایی بفرمایید مشکل از کجاست:

ویرایش شده در توسط pourmoshtagh

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

مهندس سلام.

فایل Fatal error: Call to a member function get() on null in /home/novinara/public_html/libraries/joomla/cache/storage/memcache.php on line 114

را شما دارید برای جوملای2.5؟

خودم این فایل را با فایل اصلی که داشتم جایگزین کردم ولی مشکل برطرف نشد.

(نمیدونم چرا یدفعه قاطی کرد و صفحه سفید شد و این ارور را دارد)

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

مهندس همرو غیر فعال کردم و برای آخری <?php گذاشتم ولی رسید به این ارور:

Parse error: syntax error, unexpected '<' in /home/novinara/public_html/libraries/joomla/cache/storage/memcache.php on line 475

متن کد مذکور همین الان :

<?php
/**
 * @package     Joomla.Platform
 * @subpackage  Cache
 *
 * @copyright   Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE
 */

defined('JPATH_PLATFORM') or die;

/**
 * Memcache cache storage handler
 *
 * @package     Joomla.Platform
 * @subpackage  Cache
 * @see         http://php.net/manual/en/book.memcache.php
 * @since       11.1
 */
class JCacheStorageMemcache extends JCacheStorage
{
    /**
     * @var    Memcache
     * @since  11.1
     */
    protected static $_db = null;

    /**
     * @var    boolean
     * @since  11.1
     */
    protected $_persistent = false;

    /**
     * @var
     * @since   11.1
     */
    protected $_compress = 0;

    /**
     * Constructor
     *
     * @param   array  $options  Optional parameters.
     *
     * @since   11.1
     */
    public function __construct($options = array())
    {
        parent::__construct($options);
        if (self::$_db === null)
        {
            $this->getConnection();
        }
    }

    /**
     * Return memcache connection object
     *
     * @return  object   memcache connection object
     *
     * @since   11.1
     */
    protected function getConnection()
    {
        if ((extension_loaded('memcache') && class_exists('Memcache')) != true)
        {
            return false;
        }

        $config = JFactory::getConfig();
        $this->_persistent = $config->get('memcache_persist', true);
        $this->_compress = $config->get('memcache_compress', false) == false ? 0 : MEMCACHE_COMPRESSED;

        // This will be an array of loveliness
        // @todo: multiple servers
        //$servers    = (isset($params['servers'])) ? $params['servers'] : array();
        $server = array();
        $server['host'] = $config->get('memcache_server_host', 'localhost');
        $server['port'] = $config->get('memcache_server_port', 11211);
        // Create the memcache connection
        self::$_db = new Memcache;
        self::$_db->addServer($server['host'], $server['port'], $this->_persistent);

        $memcachetest = @self::$_db->connect($server['host'], $server['port']);
        if ($memcachetest == false)
        {
            return JError::raiseError(404, "Could not connect to memcache server");
        }

        // Memcahed has no list keys, we do our own accounting, initialise key index
        if (self::$_db->get($this->_hash . '-index') === false)
        {
            $empty = array();
            self::$_db->set($this->_hash . '-index', $empty, $this->_compress, 0);
        }

        return;
    }

    /**
     * Get cached data from memcache by id and group
     *
     * @param   string   $id         The cache data id
     * @param   string   $group      The cache data group
     * @param   boolean  $checkTime  True to verify cache time expiration threshold
     *
     * @return  mixed  Boolean false on failure or a cached data string
     *
     * @since   11.1
     */
    public function get($id, $group, $checkTime = true)
    {
        $cache_id = $this->_getCacheId($id, $group);
        $back = self::$_db->get($cache_id);
        return static::$_db->get($this->_getCacheId($id, $group));
        /*return $back;
    }

    /**
     * Get all cached data
     *
     * @return  array    data
     *
     * @since   11.1
     */
    /*public function getAll()
    {
        parent::getAll();

        $keys = self::$_db->get($this->_hash . '-index');
        $secret = $this->_hash;

        $data = array();

        if (!empty($keys))
        {
            foreach ($keys as $key)
            {
                if (empty($key))
                {
                    continue;
                }
                $namearr = explode('-', $key->name);

                if ($namearr !== false && $namearr[0] == $secret && $namearr[1] == 'cache')
                {

                    $group = $namearr[2];

                    if (!isset($data[$group]))
                    {
                        $item = new JCacheStorageHelper($group);
                    }
                    else
                    {
                        $item = $data[$group];
                    }

                    $item->updateSize($key->size / 1024);

                    $data[$group] = $item;
                }
            }
        }

        return $data;
    }

    /**
     * Store the data to memcache by id and group
     *
     * @param   string  $id     The cache data id
     * @param   string  $group  The cache data group
     * @param   string  $data   The data to store in cache
     *
     * @return  boolean  True on success, false otherwise
     *
     * @since   11.1
     */
    /*public function store($id, $group, $data)
    {
        $cache_id = $this->_getCacheId($id, $group);

        if (!$this->lockindex())
        {
            return false;
        }

        $index = self::$_db->get($this->_hash . '-index');
        if ($index === false)
        {
            $index = array();
        }

        $tmparr = new stdClass;
        $tmparr->name = $cache_id;
        $tmparr->size = strlen($data);
        $index[] = $tmparr;
        self::$_db->replace($this->_hash . '-index', $index, 0, 0);
        $this->unlockindex();

        $config = JFactory::getConfig();
        $lifetime = (int) $config->get('cachetime', 15);
        if ($this->_lifetime == $lifetime)
        {
            $this->_lifetime = $lifetime * 60;
        }

        // prevent double writes, write only if it doesn't exist else replace
        if (!self::$_db->replace($cache_id, $data, $this->_compress, $this->_lifetime))
        {
            self::$_db->set($cache_id, $data, $this->_compress, $this->_lifetime);
        }

        return true;
    }

    /**
     * Remove a cached data entry by id and group
     *
     * @param   string  $id     The cache data id
     * @param   string  $group  The cache data group
     *
     * @return  boolean  True on success, false otherwise
     *
     * @since   11.1
     */
/*    public function remove($id, $group)
    {
        $cache_id = $this->_getCacheId($id, $group);

        if (!$this->lockindex())
        {
            return false;
        }

        $index = self::$_db->get($this->_hash . '-index');
        if ($index === false)
        {
            $index = array();
        }

        foreach ($index as $key => $value)
        {
            if ($value->name == $cache_id)
            {
                unset($index[$key]);
            }
            break;
        }
        self::$_db->replace($this->_hash . '-index', $index, 0, 0);
        $this->unlockindex();

        return self::$_db->delete($cache_id);
    }

    /**
     * Clean cache for a group given a mode.
     *
     * @param   string  $group  The cache data group
     * @param   string  $mode   The mode for cleaning cache [group|notgroup]
     * group mode    : cleans all cache in the group
     * notgroup mode : cleans all cache not in the group
     *
     * @return  boolean  True on success, false otherwise
     *
     * @since   11.1
     */
    /*public function clean($group, $mode = null)
    {
        if (!$this->lockindex())
        {
            return false;
        }

        $index = self::$_db->get($this->_hash . '-index');
        if ($index === false)
        {
            $index = array();
        }

        $secret = $this->_hash;
        foreach ($index as $key => $value)
        {

            if (strpos($value->name, $secret . '-cache-' . $group . '-') === 0 xor $mode != 'group')
            {
                self::$_db->delete($value->name, 0);
                unset($index[$key]);
            }
        }
        self::$_db->replace($this->_hash . '-index', $index, 0, 0);
        $this->unlockindex();
        return true;
    }

    /**
     * Test to see if the cache storage is available.
     *
     * @return  boolean  True on success, false otherwise.
     */
    /*public static function test()
    {
        if ((extension_loaded('memcache') && class_exists('Memcache')) != true)
        {
            return false;
        }

        $config = JFactory::getConfig();
        $host = $config->get('memcache_server_host', 'localhost');
        $port = $config->get('memcache_server_port', 11211);

        $memcache = new Memcache;
        $memcachetest = @$memcache->connect($host, $port);

        if (!$memcachetest)
        {
            return false;
        }
        else
        {
            return true;
        }
    }

    /**
     * Lock cached item - override parent as this is more efficient
     *
     * @param   string   $id        The cache data id
     * @param   string   $group     The cache data group
     * @param   integer  $locktime  Cached item max lock time
     *
     * @return  boolean  True on success, false otherwise.
     *
     * @since   11.1
     */
/*    public function lock($id, $group, $locktime)
    {
        $returning = new stdClass;
        $returning->locklooped = false;

        $looptime = $locktime * 10;

        $cache_id = $this->_getCacheId($id, $group);

        if (!$this->lockindex())
        {
            return false;
        }

        $index = self::$_db->get($this->_hash . '-index');
        if ($index === false)
        {
            $index = array();
        }

        $tmparr = new stdClass;
        $tmparr->name = $cache_id;
        $tmparr->size = 1;
        $index[] = $tmparr;
        self::$_db->replace($this->_hash . '-index', $index, 0, 0);
        $this->unlockindex();

        $data_lock = self::$_db->add($cache_id . '_lock', 1, false, $locktime);

        if ($data_lock === false)
        {

            $lock_counter = 0;

            // Loop until you find that the lock has been released.
            // That implies that data get from other thread has finished
            while ($data_lock === false)
            {

                if ($lock_counter > $looptime)
                {
                    $returning->locked = false;
                    $returning->locklooped = true;
                    break;
                }

                usleep(100);
                $data_lock = self::$_db->add($cache_id . '_lock', 1, false, $locktime);
                $lock_counter++;
            }

        }
        $returning->locked = $data_lock;

        return $returning;
    }

    /**
     * Unlock cached item - override parent for cacheid compatibility with lock
     *
     * @param   string  $id     The cache data id
     * @param   string  $group  The cache data group
     *
     * @return  boolean  True on success, false otherwise.
     *
     * @since   11.1
     */
    /*public function unlock($id, $group = null)
    {
        $cache_id = $this->_getCacheId($id, $group) . '_lock';

        if (!$this->lockindex())
        {
            return false;
        }

        $index = self::$_db->get($this->_hash . '-index');
        if ($index === false)
        {
            $index = array();
        }

        foreach ($index as $key => $value)
        {
            if ($value->name == $cache_id)
            {
                unset($index[$key]);
            }
            break;
        }
        self::$_db->replace($this->_hash . '-index', $index, 0, 0);
        $this->unlockindex();

        return self::$_db->delete($cache_id);
    }

    /**
     * Lock cache index
     *
     * @return  boolean  True on success, false otherwise.
     *
     * @since   11.1
     */
    /* protected function lockindex()
    {
        $looptime = 300;
        $data_lock = self::$_db->add($this->_hash . '-index_lock', 1, false, 30);

        if ($data_lock === false)
        {

            $lock_counter = 0;

            // Loop until you find that the lock has been released.  that implies that data get from other thread has finished
            while ($data_lock === false)
            {
                if ($lock_counter > $looptime)
                {
                    return false;
                    break;
                }

                usleep(100);
                $data_lock = self::$_db->add($this->_hash . '-index_lock', 1, false, 30);
                $lock_counter++;
            }
        }

        return true;
    }

    /**
     * Unlock cache index
     *
     * @return  boolean  True on success, false otherwise.
     *
     * @since   11.1
     */
<?php    protected function unlockindex()
    {
        return static::$_db->delete($this->_hash . '-index_lock');

        return self::$_db->delete($this->_hash . '-index_lock');
    }
}
 

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر
1 ساعت قبل, pourmoshtagh گفت:

مهندس سلام.

فایل Fatal error: Call to a member function get() on null in /home/novinara/public_html/libraries/joomla/cache/storage/memcache.php on line 114

را شما دارید برای جوملای2.5؟

خودم این فایل را با فایل اصلی که داشتم جایگزین کردم ولی مشکل برطرف نشد.

(نمیدونم چرا یدفعه قاطی کرد و صفحه سفید شد و این ارور را دارد)

سلام
دوست عزیز دارید سایت را داغون می کنید:) چرا دارید روی سایت اصلی آزمون و خطا می کنید؟ 


روی یک ساب دامین یا روی لوکال امتحان کنید بعد.

فایلی که خواستید را به همین پست ضمیمه کردم امیدوارم به دردتون بخوره

memcache.php

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

 

مهندس فایل شما هم جا گذاری کردم ولی نشد.همون ارور میده.

مهندس من روی ساب دامین داشتم کار میکردم که از فایل لایسنس ار اس فایروال یه کپی گرفتم تو ساب دامین.

بنظرم مشکل از لایسنس rsfirewall باید باشه.نمیدونم از هاست چطوری این کامپوننت رو غیر فعال کنم.

اطلاعات ورود به هاست رو براتون بفرستم فرصت میکنید بررسی کنید؟

 

 

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

مهندس فایروال رو غیر فعال کردم ولی نشد.

اطلاعات صحیح ورود برایتان پیام خصوصی نمودم.

ویرایش شده در توسط pourmoshtagh

به اشتراک گذاشتن این پست


لینک به پست
اشتراک در سایت های دیگر

ایجاد یک حساب کاربری و یا به سیستم وارد شوید برای ارسال نظر

کاربر محترم برای ارسال نظر نیاز به یک حساب کاربری دارید.

ایجاد یک حساب کاربری

ثبت نام برای یک حساب کاربری جدید در انجمن ها بسیار ساده است!

ثبت نام کاربر جدید

ورود به حساب کاربری

در حال حاضر می خواهید به حساب کاربری خود وارد شوید؟ برای ورود کلیک کنید

ورود به سیستم