phpmyadmin - গণনা (): প্যারামিটার অবশ্যই একটি অ্যারে বা একটি বস্তু হতে হবে যা গণনীয়কে কার্যকর করে


466

আমি টেবিলটিতে ব্যাকআপটি আপলোড করেছি, টেবিলটি খোলার পরে আমি এটি দেখতে পাচ্ছি:

Warning in ./libraries/sql.lib.php#601
count(): Parameter must be an array or an object that implements Countable

Backtrace

./libraries/sql.lib.php#2038: PMA_isRememberSortingOrder(array)
./libraries/sql.lib.php#1984: PMA_executeQueryAndGetQueryResponse(
array,
boolean true,
string 'alternativegirls',
string 'tgp_photo',
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
string '',
string './themes/pmahomme/img/',
NULL,
NULL,
NULL,
string 'SELECT * FROM `tgp_photo`',
NULL,
NULL,
)
./sql.php#216: PMA_executeQueryAndSendQueryResponse(
array,
boolean true,
string 'alternativegirls',
string 'tgp_photo',
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
string '',
string './themes/pmahomme/img/',
NULL,
NULL,
NULL,
string 'SELECT * FROM `tgp_photo`',
NULL,
NULL,
)
./index.php#53: include(./sql.php)

PhpMyAdmin এর ভিতরে ...

পিএইচপি 7.2 হয়, সার্ভারটি উবুন্টু 16.04, গতকাল ইনস্টল করা হয়েছে।

সন্ধান করে আমি দেখেছি যে কারওর কোডে এই ত্রুটি রয়েছে তবে আমি পিএইচপিএমএইডমিনে এটি প্রাপ্ত কাউকে পাইনি ...

আমার কি করা উচিৎ? এটা কি আমার ত্রুটি? একটি phpmyadmin ত্রুটি? অপেক্ষার আপডেট? আমি পিএইচপি 7.1 এ ফিরে যাব?


9
যারা যেমন সমস্যা সম্মুখীন হচ্ছে সেই: if ( count($articles)){..}মধ্যে CodeIgniter , তারা ব্যবহার করা উচিত: if ( count((array)$articles)){..}যেমন এখানে
fWd82

2
আমার এই সমস্যাটি phpmyadmin v4.6 এ ছিল আমি আপডেট হয়ে গেলাম 4.8 এ অদৃশ্য হয়ে গেল। মারিয়াডবি 10.3 এর সাথে কিছু করার আছে বলে মনে হচ্ছে, কারণ পিপিএইডমিন 4.6 সহ মারিয়াডবি 10.1-তে আমার সমস্যা ছিল না
ইউজার 889030

আমার ক্ষেত্রে সমস্যাটি দেখা দিয়েছে যখন আমি পিএইচপি 7.3 ইনস্টল করেছি যখন আমার পিএইচপিএমওয়াই অ্যাডমিনটি 4.7.1 ছিল, আমি পিএইচপি 7.0 এ ফিরে এসেছি এবং এটি ঠিক কাজ করে বা আপনি
পিএইচপিএমইএডমিনের

উত্তর:


872

/usr/share/phpmyadmin/libraries/sql.lib.phpএই আদেশটি ব্যবহার করে ফাইল সম্পাদনা করুন :

sudo nano +613 /usr/share/phpmyadmin/libraries/sql.lib.php

613 লাইনে গণনা ফাংশনটি সর্বদা সত্যের সাথে মূল্যায়ন করে যেহেতু এর পরে কোনও বন্ধন বন্ধনী নেই $analyzed_sql_results['select_expr']। নীচের প্রতিস্থাপনগুলি এটি সমাধান করে, তারপরে আপনাকে 614 লাইনটিতে শেষের বন্ধ হওয়া বন্ধনী মুছতে হবে, কারণ এটি এখন একটি অতিরিক্ত বন্ধনী।

প্রতিস্থাপন করুন:

((empty($analyzed_sql_results['select_expr']))
    || (count($analyzed_sql_results['select_expr'] == 1)
        && ($analyzed_sql_results['select_expr'][0] == '*')))

সঙ্গে:

((empty($analyzed_sql_results['select_expr']))
    || (count($analyzed_sql_results['select_expr']) == 1)
        && ($analyzed_sql_results['select_expr'][0] == '*'))

সার্ভার অ্যাপাচি পুনরায় চালু করুন:

sudo service apache2 restart

95
অবিশ্বাস্য. অ্যাপটি ব্যবহার করে phpmyadmin ইনস্টল করে উবুন্টু 18.04 এ কাজ করে।
পিএনডিএ

7
আমি টেবিলগুলি নির্বাচন করতে সক্ষম হয়ে কাজ করেছি, কিন্তু আমি যখন ডিবি রফতানি করার চেষ্টা করছিলাম তখন ত্রুটি ফিরে এসেছিল
আল্পেরিয়ান


30
আপনি যদি ডিবি রফতানীতে একই ধরণের সমস্যার মুখোমুখি হন তবে আপনাকে /usr/share/phpmyadmin/libraries/plugin_interface.lib.php, 551 লাইন সম্পাদনা করতে হবে যদি ($ বিকল্প! = নাল && গণনা ($ বিকল্পগুলি>> 0) _ থেকে _ আইফ করুন ($ বিকল্পগুলি! = নাল && গণনা ((অ্যারে) $ বিকল্পগুলি)> 0)) @ @ আল্পেরিয়ান এবং অন্যদের জন্য আকর্ষণীয় হতে পারে
বার্নড

5
এটি আমার পক্ষে কাজ করে না। আমি পেয়েছি Error in processing request Error code: 500 Error text: Internal Server Error। @ চন্দ্র নাকার সমাধানটি আমার সমস্যার সমাধান করেছে।
জী 23

470

সবচেয়ে সহজ পদ্ধতি:

টার্মিনালে এই নীচের কমান্ড লাইনটি চালান এবং পিএইচপিএমআইএডমিনে ফিরে আসুন। এখন এটি কাজ করে :)

sudo sed -i "s/|\s*\((count(\$analyzed_sql_results\['select_expr'\]\)/| (\1)/g" /usr/share/phpmyadmin/libraries/sql.lib.php

ম্যানুয়াল পদ্ধতি:

Sql.lib.php ফাইলটি খুলুন

nano /usr/share/phpmyadmin/libraries/sql.lib.php

জন্য অনুসন্ধান count($analyzed_sql_results['select_expr']ফাইলে কোড। আপনি এটি লাইন line 613 এ পেতে পারেন । আপনি এটি ভুল কোডের নীচে দেখতে পারেন

|| (count($analyzed_sql_results['select_expr'] == 1)

এই ভুল কোডটি কেবল একের নীচে দিয়ে প্রতিস্থাপন করুন

|| ((count($analyzed_sql_results['select_expr']) == 1)

ফাইলটি সংরক্ষণ করুন এবং পিএইচপিএমআইএডমিনে আসুন ।

এখন এটি কাজ করে :)


39
আগস্ট 2018 এ উবুন্টুতে 18.04 এ কাজ করে :)
লুইজ গোনালভেস

4
উবুন্টু 16.04
এসপি সিং

2
মোহন এর মতো কাজ করে
রমিজ রামি 11

2
উবুন্টু 19.04 এ কাজ করে। ধন্যবাদ
মুরম

4
ন্যানোতে একটি ঝরঝরে ছোট্ট কৌশলটি হ'ল, nano +613 filenameআপনাকে সরাসরি নির্দিষ্ট লাইনে নিয়ে যাওয়ার জন্য টাইপ করতে পারেন ।
স্টিফেননিয়েলসন

102

আমি এই পিএইচপি 7.2 গণনা () খুঁজে পেয়েছি - sql.lib.php এ SYNTAX ত্রুটি

এটি আমার কনফিগারেশনে পুরোপুরি কাজ করে:

Debian 9, 
PHP 7.2.3-1+0~20180306120016.19+stretch~1.gbp81bf3b (cli) (built: Mar  6 2018 12:00:19) ( NTS )

খোলা /usr/share/phpmyadmin/libraries/sql.lib.php

লাইন পরিবর্তন করুন : == এর আগে প্রথম বন্ধনী সরান

|| ( (গণনা করুন ($ বিশ্লেষিত_এসকিএল_ ফলাফলগুলি ['সিলেক্ট_এক্সপ্রিপ'] )) == 1) && (zed বিশ্লেষণ_এসএইচএল_প্রতিক্রিয়া ['নির্বাচন_প্রেমিক'] [0] == '*' "))

ভিতরে

function PMA_isRememberSortingOrder($analyzed_sql_results){

return $GLOBALS['cfg']['RememberSorting']
    && ! ($analyzed_sql_results['is_count']
        || $analyzed_sql_results['is_export']
        || $analyzed_sql_results['is_func']
        || $analyzed_sql_results['is_analyse'])
    && $analyzed_sql_results['select_from']
    && ((empty($analyzed_sql_results['select_expr']))
        || ((count($analyzed_sql_results['select_expr'] ) == 1)
            && ($analyzed_sql_results['select_expr'][0] == '*')))
    && count($analyzed_sql_results['select_tables']) == 1;
 }

নিম্নলিখিত লাইনে আপনাকে শেষের একটি বন্ধনী বন্ধ করতে হবে।
ফ্লপস

ধন্যবাদ। অ্যাপ্লিকেশন ইনস্টলযোগ্য প্যাকেজ দিয়ে কীভাবে এই জাতীয় ত্রুটি প্রকাশিত হয়েছিল? কিছুটা হাস্যকর।
জোশ মোরেল

1
@ ফ্লপ্পস না, এটি সঠিক নয়। আপনি যে বন্ধ প্যারান্থেসিসটি সরাবেন না। আমি আপনার উপায় পরীক্ষা করেছি এবং এটি ঘটেছে server error। @ লোকাসের উত্তরটি গ্রহণযোগ্য হওয়া উচিত।
দীর্ঘ

আমাদের জন্য এটি বানান এবং যেখানে প্রয়োজন সেখানে সাহসী ফন্ট ব্যবহার করার জন্য ধন্যবাদ। প্রথম বা দ্বিতীয় উত্তর দুটিই আমার পক্ষে যথেষ্ট পরিষ্কার ছিল না কারণ তারা কী করছে তা তারা বলে নি। ন্যানোতে সম্পাদনা করা জেডিট বা যা-ই হোক না কেন।
লজিকব্লোক

71

ডেবিয়ানে পরীক্ষিত, উবুন্টুতে কাজ করা উচিত:

1.) প্রথমে সর্বশেষ পিএইচপিএমডায়মডমিন ফাইলটি ডাউনলোড করুন।

২) /usr/share/phpmyadminডিরেক্টরিতে অবস্থিত সমস্ত পূর্ববর্তী সংস্করণ ফাইল মুছুন (একটি ব্যাকআপ করুন) ।

৩) /usr/share/phpmyadmin/সর্বশেষ পিএইচপিএমইডমিনের সমস্ত ফাইল ডিরেক্টরিতে সঙ্কোচিত করুন।

৪) ফাইল পরিবর্তন করুন libraries/vendor_config.phpএবং লাইন পরিবর্তন করুন :

define('CONFIG_DIR', '');

প্রতি

define('CONFIG_DIR', '/etc/phpmyadmin/');

এবং

define('TEMP_DIR', './tmp/');

প্রতি

define('TEMP_DIR', '/tmp/');

5.) অ্যাপাচি সার্ভার পুনরায় আরম্ভ করুন এবং সম্পন্ন।


3
উবুন্টু 16.04 এ কাজ করে
pjehan

7
উবুন্টু 18.04 এ কাজ করে
সাইমন এপসক্যাম্প

4
উবুন্টু 18.04, পিএইচপিএমএইডমিন 4.8.0.1 - আমার দরকার ছিলmkdir /usr/share/phpmyadmin/tmp; chgrp www-data tmp; chmod g+w tmp;
বিলিএনঃ

উবুন্টু 16.04 সবেমাত্র এটি /usr/share/phpmyadminকাজ করে। পরবর্তী পদক্ষেপগুলি অনুসরণ করার প্রয়োজন ছিল না।
tushar.dahiwale

@ বিলিন্নাহ একই সাথে নতুন ইনস্টল করুন। আমি টিএমপি ডিরেক্টরি তৈরি করেছি, এটি 777 এ সেট করেছি, অ্যাপাচি পুনরায় চালু করেছি, পিএইচপিএমআইএডমিন থেকে লগ আউট করেছি এবং ত্রুটিগুলি চলে গেছে।
জেএসকারি

38

ফাইল সম্পাদনা করুন :'/usr/share/phpmyadmin/libraries/sql.lib.php'

প্রতিস্থাপন :(count($analyzed_sql_results['select_expr'] == 1)

সহ : (count($analyzed_sql_results['select_expr']) == 1

এটি আমার জন্য কাজ করেছে


এটি শর্তের ভিত্তিতে আমার পক্ষে কাজ করেছে আপনি ঠিক করেছেন অভ্যন্তরীণ 500 ত্রুটিটি সমাধান হয়েছে, তবে পুরানো ত্রুটি সমস্যা "phpmyadmin - গণনা (): প্যারামিটার অবশ্যই একটি অ্যারে বা এমন কোনও বস্তু হতে হবে যা" গণনযোগ্যকে কার্যকর করে "সমাধান করা হয় না।
shashik493

এটি আমার পক্ষে কাজ করে বলে মনে হচ্ছে তবে কেন এমনটি হয়েছে কেউ জানেন? আমার পিএইচপিএমইডমিন ঠিক কাজ করছিল এবং তারপরে হঠাৎ করেই আমি আজ লগইন করেছি এবং এই সমস্যাটি আছে বলে মনে হচ্ছে? উবুন্টু 18.04.2 LTS
wheelsmanx

উবুন্টু 18.04, উইং
এনগিনেক্স

34
Works on UBUNTU 18.04 


Edit file: '/usr/share/phpmyadmin/libraries/sql.lib.php'
Replace: (count($analyzed_sql_results['select_expr'] == 1)
With:  ((count($analyzed_sql_results['select_expr']) == 1)

Restart the server
sudo service apache2 restart

এটি আমার জন্য 18.04-তে কাজ করেছে, ধন্যবাদ! এমনকি সার্ভার পুনরায় আরম্ভ করার দরকার নেই - পিএইচপি'কে 'লাইভ' ব্যাখ্যা করা হয়।
জেলি ভেরা

@ জেলেভেরা, আপনার বিশেষ কেহ হিহে;)
কালেম

32

যদি কারও ডিবি রফতানি পৃষ্ঠায় অনুরূপ ত্রুটি থাকে (উবুন্টু 18.04 এ আমার এই সমস্যাটি ছিল), তবে /usr/share/phpmyadmin/libraries/plugin_interface.lib.phpকোড সহ ফাইলের 551 লাইনটি প্রতিস্থাপন করুন

if ($options != null && (is_array($options) || $options instanceof Countable) && count($options) > 0) {

এটি আমাকে পাশাপাশি সহায়তা করেছিল তবে উত্তর এবং এটি উভয়ই আমাকে করতে হয়েছিল। উবুন্টু 18.04
করুহঙ্গা

2
এটি ত্রুটি বার্তাগুলি থেকে মুক্তি পাওয়ার জন্য কাজ করেছিল, তবে আমি মনে করি এটি পরে বিবৃতিটি এড়িয়ে যায় এবং আমার ডাটাবেস রফতানিতে কিছুই পাই না (একটি তাত্ক্ষণিকতায় একটি ডাটাবেস শেষ করার পরে পৃষ্ঠাটি রিফ্রেশ করার পরে নীচে দেখানো হয়) একটি ক্ষুদ্র ফাইলের ছাপ সহ রফতানি করুন)
ওয়ারেন ওয়াং

চুমু, চুমু, আমি তোমাকে ভালবাসি।
নোহ ক্র্যাসার

1
ডেবিয়ান 9-তে 551 লাইনটি প্রতিস্থাপন করুন: এর if ($options != null && count($options) > 0) {সাথে: if ($options != null) {তারপরে আপনি রফতানি করতে পারবেন
বিটডেভিল 2 কে 16

এটিই একমাত্র 18.04 এ কাজ করেছে
টিটি পিসি

28

phpmyadmin 4.7.4 "পিএইচপি 7.2 এর সাথে বেশ কয়েকটি সামঞ্জস্যতার সমস্যার সমাধান করেছে" বলে মনে করা হচ্ছে

আপনার কাছে phpmyadmin এর একটি পুরানো সংস্করণ রয়েছে।

https://www.phpmyadmin.net/news/2017/8/24/phpmyadmin-474-released/


24

উবুন্টু-18.04 এ নিম্নলিখিত পদক্ষেপগুলি এগিয়ে যান:

পদক্ষেপ 1) সনাক্ত করুনsql.lib.php

এটি এমন কিছু প্রদর্শন করবে:

/usr/share/phpmyadmin/libraries/sql.lib.php

পদক্ষেপ 2) টার্মিনাল খুলুন (Alt টি) এবং লিখুন:

sudo /usr/sbin/pma-configure

পদক্ষেপ 3)sudo gedit /usr/share/phpmyadmin/libraries/sql.lib.php এবং ফাংশনের নীচে অনুসন্ধান করুন:

 

    PMA_isRememberSortingOrder ফাংশন (zed বিশ্লেষণ_এসকিএল_প্রাপ্তি)
     {
        ফিরুন $ গ্লোবালস ['সিএফজি'] ['রিমোটসোর্টিং']
            &&! ($ Analyzed_sql_results [ 'is_count']
                || $ Analyzed_sql_results [ 'is_export']
                || $ Analyzed_sql_results [ 'is_func']
                || $ Analyzed_sql_results [ 'is_analyse'])
            && $ বিশ্লেষিত_এসকিএল_প্রাপ্তি ['নির্বাচন_ফর্ম']
            && ((খালি (zed বিশ্লেষণ করা_এসএইচএল_ ফলাফলগুলি ['নির্বাচন_প্রেমীকরণ'])))
                || (গণনা করুন (zed বিশ্লেষণ করা_এসকিএল_ ফলাফলগুলি ['সিলেক্ট_এক্সপ্রিপ'] == 1)
                    && (zed বিশ্লেষণ করা_এসকিউএল_সাল্টস ['সিলেক্ট_এক্সপ্রিপ'] [0] == '*')))
            && গণনা (zed বিশ্লেষিত_এসকিউএল_প্রাপ্তি ['সিলেক্ট টেবিল']) == 1;
     }

পদক্ষেপ 4) উপরের ফাংশনটি এর সাথে প্রতিস্থাপন করুন:

     PMA_isRememberSortingOrder ফাংশন (zed বিশ্লেষণ_এসকিএল_প্রাপ্তি)
     {
        ফিরুন $ গ্লোবালস ['সিএফজি'] ['রিমোটসোর্টিং']
            &&! ($ Analyzed_sql_results [ 'is_count']
                || $ Analyzed_sql_results [ 'is_export']
                || $ Analyzed_sql_results [ 'is_func']
                || $ Analyzed_sql_results [ 'is_analyse'])
            && $ বিশ্লেষিত_এসকিএল_প্রাপ্তি ['নির্বাচন_ফর্ম']
            && ((খালি (zed বিশ্লেষণ করা_এসএইচএল_ ফলাফলগুলি ['নির্বাচন_প্রেমীকরণ'])))
                || (গণনা করুন ($ বিশ্লেষণ করা_এসকিউএল_প্রাপ্তি ['নির্বাচন_প্রকাশ'])) == ১)
                    && (zed বিশ্লেষণ করা_এসকিউএল_প্রাপ্তি ['সিলেক্ট_এক্সপ্রিপ'] [0] == '*'))
            && গণনা (zed বিশ্লেষিত_এসকিউএল_প্রাপ্তি ['সিলেক্ট টেবিল']) == 1;
     }

পদক্ষেপ 4) ফাইল সংরক্ষণ এবং বন্ধ করুন এবং টার্মিনালে নীচে কমান্ড

sudo /usr/sbin/pma-secure

পদক্ষেপ 5) sudo service mysql reload

পদক্ষেপ)) sudo service apache2 reload

এটা আমার জন্য কাজ করে .. গুডলাক


মাইএসকিউএল এবং অ্যাপাচি পুনরায় লোড প্রয়োজনীয় নয়।
টাকসিয়াজুমা

ফাইল পরিবর্তনের পরে আমি এই বার্তাটি পেয়েছি: "- মূল @ লালা: ~ # / usr / sbin / pma- সুরক্ষিত - phpMyAdmin ইনস্টলেশন সুরক্ষিত করা হচ্ছে ... - সেটআপ স্ক্রিপ্ট কনফিগারেশন লিখতে সক্ষম হবে না - - রুট @ লল্লা: ~ # "
cl-r

22

এই ফাইলটি খুলুন: '/usr/share/phpmyadmin/libraries/sql.lib.php'

sudo nano /usr/share/phpmyadmin/libraries/sql.lib.php

অনুসন্ধানের জন্য ctrl + w টিপুন (গণনা করুন (zed বিশ্লেষণ_এসএইচএল_আসলে ['নির্বাচন করুন_মছা'] == 1)

Find: count($analyzed_sql_results['select_expr'] == 1)

Replace With:  (count($analyzed_sql_results['select_expr']) == 1)

সার্ভারটি পুনরায় চালু করুন

 sudo service apache2 restart

তদ্ব্যতীত, আপনি যদি এখনও একই সমস্যার মুখোমুখি হন তবে নিম্নলিখিতগুলি করুন।

এই ফাইলটি খুলুন:

sudo nano /usr/share/phpmyadmin/libraries/plugin_interface.lib.php

সন্ধান করুন: যদি ($ বিকল্পগুলি! = নাল && গণনা ($ বিকল্পগুলি)> 0)

Ctrl+w : if ($options != null && count($options) > 0) {

নিম্নলিখিত কোড সহ প্রতিস্থাপন

if ($options != null && count((array)$options) > 0) {

এখন সার্ভারটি সংরক্ষণ করুন এবং পুনরায় চালু করুন

sudo /etc/init.d/apache2 restart

আপনি কেবল একটি বন্ধনী যুক্ত করেছেন। কিন্তু ধন্যবাদ. আমি লাইনের শেষে অতিরিক্ত ব্রেস
সরিয়েছি

আমি আমার ম্যাকে xampp ইনস্টল করেছি, আমি / usr / share / phpmyadmin ফোল্ডারটি খুঁজে পেলাম না এবং তাই '/usr/share/phpmyadmin/libraries/sql.lib.php' এই দোসরটি আমার জন্য বিদ্যমান, আপনি কি তাতে সহায়তা করতে পারেন?
সৌরভ ভার্মা

18

আমি মনে করি সেরা বিকল্প হ'ল Phpmyadmin এমন কোনও সংস্করণে আপডেট করা যা এটি ইতিমধ্যে ঠিক করে দিয়েছে।

এটি দেব হিসাবে প্রকাশিত হওয়া অবধি আপনি @ ক্রিমসন -501 উত্তরে এটি করতে পারেন যা আমি নীচে অনুলিপি করব:

  • আপনার প্রথম পদক্ষেপ কর্মকর্তা উবুন্টু রেপো থেকে PMA (পিএইচপি মাই এডমিন) ইনস্টল করা: apt-get install phpmyadmin
  • এর পরে, usr / shar ডিরেক্টরির মধ্যে সিডি: cd /usr/share
  • তৃতীয়ত, phpMyAdmin ডিরেক্টরির সরান: rm -rf phpmyadmin
  • এখন আমাদের সিস্টেমে সর্বশেষতম পিএমএ সংস্করণটি ডাউনলোড করতে হবে (নোট করুন আপনার উইজেটের দরকার আছে apt-get install wget:): wget -P /usr/share/ "https://files.phpmyadmin.net/phpMyAdmin/4.9.4/phpMyAdmin-4.9.4-english.zip" আমাকে এই আদেশের যুক্তিগুলি ব্যাখ্যা করতে দিন, -পি পথটি সংজ্ঞায়িত করে এবং "লিঙ্ক.জিপ" বর্তমানে রয়েছে (7/17/18 ) পিএমএর সর্বশেষতম সংস্করণ। আপনি এখানে লিঙ্কগুলি খুঁজে পেতে পারেন ।
  • এই পরবর্তী ধাপে জন্য আপনি আনজিপ হবে ( apt-get install unzip): unzip phpMyAdmin-4.9.4-english.zip। আমরা কেবল পিএমএ আনজিপড করেছি, এখন আমরা এটিকে চূড়ান্ত বাড়িতে নিয়ে যাব।
  • cpআমাদের ফাইলগুলি সরানোর জন্য (অনুলিপি) কমান্ডটি ব্যবহার করা যাক ! মনে রাখবেন যে -rএটি একটি ফোল্ডার হওয়ায় আমাদের যুক্তি যুক্ত করতে হবে । cp -r phpMyAdmin-4.9.4-english phpmyadmin
  • এখন এটা পরিষ্কার করার সময়: rm -rf phpMyAdmin-4.9.4-english

পড়া চালিয়ে যান!

আপনি পিএমএতে লগ ইন করার পরে আপনি এখন দুটি ত্রুটি লক্ষ্য করতে পারেন।

the configuration file now needs a secret passphrase (blowfish_secret). phpmyadmin
The $cfg['TempDir'] (./tmp/) is not accessible. phpMyAdmin is not able to cache templates and will be slow because of this.

তবে এই সমস্যাগুলি সমাধান করা তুলনামূলকভাবে সহজ। প্রথম ইস্যুর জন্য আপনাকে যা করতে হবে তা হ'ল আপনার পছন্দ এবং সম্পাদনা সম্পাদনা করা /usr/share/phpmyadmin/config.inc.phpতবে সমস্যা আছে, আমরা এটি সরিয়ে দিয়েছি! এটি ঠিক আছে, আপনাকে যা করতে হবে তা হ'ল: cd /usr/share/phpmyadmin& cp config.sample.inc.php config.inc.php

  • আমরা এখন আমাদের ব্লোফিশ সিক্রেট যুক্ত করব! nano config.inc.phpএবং এই পৃষ্ঠার নীচের কাছাকাছি থেকে গতিশীল উত্পন্ন গোপনীয়তা অনুলিপি করুন: https://www.question-defense.com/tools/phpmyadmin-blowfish-secret-generator

পিএইচপিএমআইএডমিন ব্লোফিশ গোপনীয় চলক প্রবেশের উদাহরণ:

/*
 * This is needed for cookie based authentication to encrypt password in
 * cookie
 */
$cfg['blowfish_secret'] = '{^QP+-(3mlHy+Gd~FE3mN{gIATs^1lX+T=KVYv{ubK*U0V'; 
/* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

এখন ফাইলটি সংরক্ষণ এবং বন্ধ করুন।

  • এখন আমরা পিএমএ: mkdir tmp& এর জন্য একটি টিএমপি ডিরেক্টরি তৈরি করব chown -R www-data:www-data /usr/share/phpmyadmin/tmp। শেষ কমান্ডটি অ্যাপাচি ওয়েব সার্ভারকে tmp ডিরেক্টরিটির মালিকানা এবং এর সামগ্রীগুলি সম্পাদনা করার অনুমতি দেয়।

এই উত্তরটি অবিশ্বাস্যভাবে কার্যকর হয়েছে! আমার জন্য সমস্যার সমাধান! ধন্যবাদ! PS: আপনি ব্লো ফিশ জেনারেটরগুলি অনলাইনে খুঁজে পেতে পারেন।
lucbas

এবং এই লিঙ্কে সমাধান: ডিভান্সওয়ার্স.কম / ম্যানুয়ালি-আপগ্রেড- পিপিএইপমিন একটি সহজ পরিকল্পনা সহ
ব্লোফিশ

পুরানো সংস্করণগুলির কনফিগার ফাইলগুলি সম্পাদনা করার তুলনায় এটি অনেক ভাল সমাধান।
অ্যান্ড্রোমদা

17

ফাইলটিতে এই ফাংশনটি প্রতিস্থাপনের চেষ্টা করুন:

function PMA_isRememberSortingOrder($analyzed_sql_results)
{
    return $GLOBALS['cfg']['RememberSorting']
        && ! ($analyzed_sql_results['is_count']
            || $analyzed_sql_results['is_export']
            || $analyzed_sql_results['is_func']
            || $analyzed_sql_results['is_analyse'])
        && $analyzed_sql_results['select_from']
        && ((empty($analyzed_sql_results['select_expr']))
            || (count($analyzed_sql_results['select_expr']) == 1)
                && ($analyzed_sql_results['select_expr'][0] == '*'))
        && count($analyzed_sql_results['select_tables']) == 1;
}

ধন্যবাদ! এই লাইনটি যেখানে আমার শেষ দিকে ভুল হয়েছিল যেখানে আমার কাছে 3 টি বন্ধনী বন্ধনী ছিল যাতে আমার কেবল 2 টি বন্ধনী বন্ধনী প্রয়োজন & & Phpmyadmin 4.6, php 7.2.10, উবুন্টু 18.4.1
ওয়াং'ল পাখরিন

17

উবুন্টু 18.04 এলটিএস

এই পদক্ষেপগুলি আমার জন্য কাজ করেছিল। অনেকগুলি, তাদের উবুন্টু পিপিএতে স্বয়ংক্রিয় আপডেটগুলি সরবরাহ করার জন্য উইলিয়াম ডেস্পোর্টসকে অনেক ধন্যবাদ।

পদক্ষেপ 1 ( উইলিয়াম ডেস্পোর্টস পোস্ট থেকে )
$sudo add-apt-repository ppa:phpmyadmin/ppa

পদক্ষেপ 2
$sudo apt-get --with-new-pkgs upgrade

পদক্ষেপ 3
$sudo service mysql restart

আপনার যদি মাইএসকিএল পুনরায় চালু করতে সমস্যা হয় তবে আপনি নিম্নলিখিত ক্রম
$ with এর সাথে পুনরায় চালু করতে পারেন sudo service mysql stop;
$sudo service mysql start;


2
উবুন্টু 18.04 এলটিএসে সমস্যাটি সমাধান করে। গ্রহণযোগ্য উত্তর হওয়া উচিত।
bgaze

15

উবুন্টু 18.10 (ডিসেম্বর, 2018)

লাইন 613, 614, 615, এর সাথে প্রতিস্থাপন করুন:

        || count($analyzed_sql_results['select_expr']) == 1
            && ($analyzed_sql_results['select_expr'][0] == '*'))
    && count($analyzed_sql_results['select_tables']) == 1;

এটি আমার জন্য কাজ করেছে .. মাইএসকিএল বা কোনও কিছু আপগ্রেড করার দরকার নেই ... ধন্যবাদ @ ইওল
নিতিন বাঘনী

15

আমার জন্য কাজ .. উবুন্টু 18.04

sudo nano /usr/share/phpmyadmin/libraries/sql.lib.php

জন্য অনুসন্ধান count($analyzed_sql_results['select_expr']ফাইলে কোড। আপনি এটি লাইন line 613 এ পেতে পারেন।

|| (count($analyzed_sql_results['select_expr'] == 1)

কেবল কোড সহ প্রতিস্থাপন করুন:

|| ((count($analyzed_sql_results['select_expr']) == 1)

ফাইলটি সংরক্ষণ করুন এবং PhpMyAdmin পুনরায় লোড করুন।

সম্পন্ন!!!


1
লাইন 613 সালে, পরিবর্তনের|| (count($analyzed_sql_results['select_expr']) == 1
tnductam

11

আমার phpmyadmin সংস্করণ (4.6.6deb5) এর জন্য, আমি 613 লাইন পেয়েছি এবং বুঝতে পেরেছি () বন্ধনীগুলি সঠিকভাবে বন্ধ করা হয়নি। পরবর্তী প্রকাশের আগ পর্যন্ত সাময়িকভাবে এটিকে ঠিক করতে, কেবল পরিবর্তন করুন:

|| (count($analyzed_sql_results['select_expr'] == 1)

প্রতি:

|| (count($analyzed_sql_results['select_expr']) == 1

ফাংশন কল বন্ধ করার জন্য একটি অনুপস্থিত বন্ধনী ছিল || (গণনা করুন ($ বিশ্লেষিত_এসকিএল_আরক্ষক ['নির্বাচন_প্রশ্ন'])) == 1 সঠিক বক্তব্য
রবারেন্ডিন্ডা ধৈর্য

যারা জানেন না তাদের জন্য ফাইল পাথ "/usr/share/phpmyadmin/libraries/sql.lib.php"।
আলী ইমরান

9

এটি পিএইচপিএমইএডমিনের পরবর্তী সংস্করণগুলিতে স্থির হয়েছে। উবুন্টু 18.04.2 এর জন্য উবুন্টু সফটওয়্যার সংগ্রহস্থলটির সংস্করণ 4.6.6.5 রয়েছে, যখন তারা বর্তমানে 4.9.0.1 এ রয়েছে। আপনার পিএইচপিএমইএইডমিন ইনস্টলেশন আপডেট করা এই সমস্যাটি সমাধান করবে, তবে কেবলমাত্র সেই এক লাইনের কোডটি সম্পাদনা করার চেয়ে ঝুঁকিপূর্ণ হতে পারে। আমি আমার উবুন্টু সার্ভারে এটি কীভাবে করেছি Here সমস্ত অপারেটিং সিস্টেমের জন্য পদক্ষেপগুলি মূলত একই (আলাদা পথ সহ) are

  1. পিএইচপিএমইএডমিন ডাউনলোড করুন ।
wget https://files.phpmyadmin.net/phpMyAdmin/4.9.0.1/phpMyAdmin-4.9.0.1-all-languages.zip
unzip phpMyAdmin-4.9.0.1-all-languages.zip
  1. আপনার পুরানো PHPMyAdmin ইনস্টলেশন ব্যাকআপ করুন।
cp -r /usr/share/phpmyadmin ~/phpmyadmin-backup
  1. আপনার পুরানো পিএইচপিএমআইএডমিনে আপনার নতুন পিএইচপিএমআইএডমিনটি ফেলে দিন
cd phpMyAdmin-4.9.0.1-all-languages
rm -r /usr/share/phpmyadmin/doc/html
cp -R * /usr/share/phpmyadmin/

এটি কাজ করে যাচাই করুন। যদি তা না হয়, ভাল ... আপনার একটি ব্যাকআপ রয়েছে, তাই এটি পুনরুদ্ধার করুন এবং ম্যানুয়ালি ত্রুটিযুক্ত লাইনটি সম্পাদনা করুন। আমার নিজস্ব অভিজ্ঞতায়, আমি এটি আবিষ্কার করার পরে আবিষ্কার করেছিলাম যে সংস্করণটি 4.6.6.5 কেবল বাগের সাথেই ছাঁটাই ছিল না, তবে নতুন 4.9.0.1 এর তুলনায় অবিশ্বাস্যরূপে ধীর ছিল। গতি বৃদ্ধিটি এমন কোনও কিছুর জন্য খাঁটি যাদু ছিল যদিও আমি "ওয়ার্ডপ্রেস" মানের।


আমি 1 এবং 2 এর ক্রমটি স্যুইচ করতাম, এবং উইজেটের আগে আমি সিডি / টিএমপি দিতাম তবে সেটিকে বাদ দিয়ে, দুর্দান্ত, আপনাকে ধন্যবাদ।
ক্রিস

এটি আমার পক্ষে কাজ করে, সহজ সমাধানের জন্য ধন্যবাদ!
uestcfei

8

ইউবুন্টু 16.04.3 এ কাজ করে কেবল খোল

usr / share / লাইব্রেরি / sql.lib.php

পরিবর্তন

|| (count($analyzed_sql_results['select_expr'] == 1)

প্রতি

|| ((count($analyzed_sql_results['select_expr']) == 1)


5

পিএইচপিএমআইএডমিন 4.8.3 এ আপগ্রেড করুন। এটি পিএইচপি 7.2 সামঞ্জস্যতার সমস্যাগুলি সমাধান করে


5

|| ((count($analyzed_sql_results['select_expr']) == 1

এটি আমি 614 লাইনে পরিবর্তন করেছি এবং phpmyadmin কোনও ত্রুটি ছাড়াই কাজ করে। প্রয়োজনের এক (গণনা আগে, এবং এক )আগে ==। এটাই.


4

ফাইল সম্পাদনা করুন '/usr/share/phpmyadmin/libraries/sql.lib.php' প্রতিস্থাপন: (ব্যাকআপ করুন)

"|| (count($analyzed_sql_results['select_expr'] == 1) 
&&($analyzed_sql_results['select_expr'][0] == '*'))) 
&& count($analyzed_sql_results['select_tables']) == 1;"

সঙ্গে:

"|| (count($analyzed_sql_results['select_expr']) == 1) 
&& ($analyzed_sql_results['select_expr'][0] == '*') 
&& (count($analyzed_sql_results['select_tables']) == 1));"

3

হাইগুলি নীচে আমার একই সমস্যার একদম সমাধান করুন (আমদানি / রফতানি ইত্যাদি):

বাগ Phpmyadmin [প্লাগইন_ইন্টারফেস.লিব.এফপি] + পিএইচপি 7.2 + উবুন্টু 16.04

সুতরাং ... উবুন্টু 18.04 এর অধীনে, মাইএসকিএল, পিএইচপি 7.2: টার্মিনাল:

sudo gedit /usr/share/phpmyadmin/libraries/plugin_interface.lib.php

নিম্নলিখিত লাইনটি সন্ধান করুন (ctrl + f):

if ($options != null && count($options) > 0) {

এটি আমার জন্য # 551 লাইনে ছিল

এবং নিম্নলিখিতগুলির জন্য পরিবর্তন করুন:

if ($options != null && count((array)$options) > 0) {

পরিবর্তনগুলি সংরক্ষণের জন্য সিআরটিএল + গুলি

এবং টার্মিনালে: ফিরে প্রম্পটের জন্য সিটিআরএল + সি ...

এবং: sudo systemctl restart apache2

"আমি মনে করি নতুন পিএইচপি সংস্করণে un এটি আন অ্যারে প্রকারের সাথে গণনা () বা মাপের () ব্যবহার করতে পারে না para অ্যারেতে প্যারামিটার জোর করা এই বাগটি সমাধানের সহজ উপায়, ..."

সমস্যা সমাধানের জন্য মূল লেখকের জন্য ধন্যবাদ! আমি এটা ভাগ করার চেষ্টা করুন!


3

/usr/share/phpmyadmin/sql.lib.phpউন্নত সুবিধাসমূহ সহ ফাইলটি খুলুন এবং ফাংশনে নিম্নলিখিতগুলি সম্পাদনা করুন PMA_isRememberSortingOrder():

  1. প্রাথমিক ত্রুটি ঠিক করতে 613 লাইন:
    • প্রতিস্থাপন করা || count($analyzed_sql_results['select_expr'] == 1)
    • সঙ্গে || (count($analyzed_sql_results['select_expr']) == 1)
  2. follow 500 লাইনটি 500 টির ত্রুটি যা সম্ভবত অনুসরণ করবে তা ঠিক করতে:
    • প্রতিস্থাপন করা && ($analyzed_sql_results['select_expr'][0] == '*')))
    • সঙ্গে && ($analyzed_sql_results['select_expr'][0] == '*'))

আপনার অ্যাপাচি সার্ভারটি পুনরায় চালু করুন: sudo service apache2 restart

PhpMyAdmin 4.6.6 এবং পিএইচপি 7.2 সহ উবুন্টু 18.04 এর উপর ভিত্তি করে লিনাক্স মিন্ট 19.1 এ পরীক্ষিত on


3

আমি উপরের সমস্ত সমাধানের চেষ্টা করেছি কিন্তু আমার পক্ষে কাজ করে নি।

এটা চেষ্টা কর:-

পিএইচপি প্রয়োজনীয় সংস্করণ ইনস্টল করুন (আমার ক্ষেত্রে 7.0) এবং তারপরে টার্মিনালে টাইপ করুন

sudo update-alternatives --config php

আউটপুটটি এরকম হবে: -

এখানে চিত্র বর্ণনা লিখুন

তারপরে আপনি কেবল নির্বাচন নম্বর (আমার ক্ষেত্রে 1) প্রবেশ করে পিএইচপি এর যে কোনও সংস্করণে স্যুইচ করতে পারেন।

আশা করি এটি অন্যকে সহায়তা করতে পারে - :)


2

উইন্ডোজ ব্যবহার করার সময় আমার এই সমস্যাটি ছিল এবং উপরের প্রতিক্রিয়াগুলি আমার জন্য এটি সমাধান করেছিল, তবে আমি যখন লিনাক্সে স্যুইচ করেছি (উবুন্টু 18.04 এলটিএস) আমার একই সমস্যা ছিল এবং আমি কীভাবে সমাধান করব তা বুঝতে পারি না কারণ আমি ফাইলটি দেখতে পাইনি '/usr/share/phpmyadmin/libraries/sql.lib.php'।

এই sql.lib.php ফাইলটি আমার / অপ্ট / ল্যাম্প ডিরেক্টরিতে ফোল্ডার বা phpmyadmin / লাইব্রেরি ফোল্ডারে নেই - যেহেতু আমি আমার উবুন্টুতে xampp ব্যবহার করছিলাম। এক্সএএমপ্পে করা আপডেটের উপর ভিত্তি করে (কারণ আমি এখনকার হিসাবে সর্বশেষতম ইনস্টলেশনটি ব্যবহার করেছি) সেটআপ।

উত্তরটি এখনও প্রতিস্থাপন করতে হবে: (count($analyzed_sql_results['select_expr'] == 1)

সঙ্গে: (count($analyzed_sql_results['select_expr']) == 1

তবে অনুসন্ধান করার জন্য ফাইলটি Sql.phpপাওয়া যায়/opt/lampp/phpmyadmin/libraries/classes/Sql.php

ভবিষ্যতের আপডেটগুলি বা যদি আপনি এটি এখনও খুঁজে না পান: grep -r 'count($analyzed_sql_results' /opt/lampp/phpmyadminআপনার ডিরেক্টরিতে ডকুমেন্টগুলির জন্য অনুসন্ধান করতে ব্যবহার করুন এবং সেই অনুসারে সম্পাদনা করুন


2

ফাংশন প্রতিস্থাপন:

function PMA_isRememberSortingOrder($analyzed_sql_results) {
return $GLOBALS['cfg']['RememberSorting']
    &&!(
        $analyzed_sql_results['is_count']
        || $analyzed_sql_results['is_export']
        || $analyzed_sql_results['is_func']
        || $analyzed_sql_results['is_analyse']
    )&&
    $analyzed_sql_results['select_from']&&
    (
        empty($analyzed_sql_results['select_expr'])||
        count($analyzed_sql_results['select_expr'])==1&&
        $analyzed_sql_results['select_expr'][0] == '*'
    )
    && count($analyzed_sql_results['select_tables']) == 1;
}

2

ফাইল সম্পাদনা করুন /usr/share/phpmyadmin/libraries/sql.lib.php

আপনার ত্রুটিতে একটি ত্রুটি দেখুন

./libraries/sql.lib.php#2038: PMA_isRememberSortingOrder(array)
./libraries/sql.lib.php#1984: PMA_executeQueryAndGetQueryResponse(

এই লাইনে যান এবং ফাংশন কল সরান।

এটা আমার জন্য কাজ করে.


2

আমি দেখতে পাচ্ছি যে আপনি সকলেই আমাদের ফাইলগুলি সম্পাদনা করছেন বা আপডেট করছেন

যারা স্বয়ংক্রিয় আপডেট চান তাদের জন্য আপনি আমাদের উবুন্টু পিপিএ ব্যবহার করতে পারেন

sudo অ্যাড-এপ-রিপোজিটরি পিপিএ: phpmyadmin / পিপিএ

এবং ডেবিয়ান ব্যবহারকারীদের জন্য আপনাকে দেবিয়ার পরবর্তী সংস্করণটির জন্য অপেক্ষা করতে হবে বা পিপিএ ব্যবহার করতে হবে

উবুন্টু 20 এর পিএইচপিএমওয়াই অ্যাডমিন 4.9 বা তার পরবর্তী সংস্করণ রয়েছে

আমাদের ট্র্যাকারে ডেবিয়ান ইস্যু

আমাদের ট্র্যাকারে গণনাযোগ্য সমস্যা

এই সমস্যাটি সমাধান করার জন্য সর্বশেষ 4.9 বা 5.0 সংস্করণে টিএলডিআর আপডেট।


1

মারিয়াডিবি এবং এনগিনেক্সের সাথে উবুন্টু 18.04-তে, আমি এটি /usr/share/phpmyadmin/libraries/sql.lib.php ফাইল আপডেট করে সমাধান করেছি:

|| (count($analyzed_sql_results['select_expr']) == 1

@ নুগেইন দ্বারা উল্লিখিত উত্তরটি 500 ত্রুটিটি ছুঁড়ে বলেছে:

FastCGI sent in stderr: "PHP message: PHP Parse error:  syntax error, unexpected ')', expecting ';' in /usr/share/phpmyadmin/libraries/sql.lib.php on line 614"

1

Conf ফাইলে পরিবর্তন মধ্যে কোডে ত্রুটি (বনাম @ ĦΔŇĐŘΔ ŇΔҜҜΔ উত্তর @Jacky গুয়েন) পরিবর্তিত হতে পারে হিসাবে, সাধারণ সমাধান উত্তর হবে ক) conf ফাইলে পরিবর্তন মধ্যে শর্ত যুক্তিবিজ্ঞান সংশোধন জানার জন্য (x) এর বা খ) সংশোধন ইনস্টল / বর্তমান phpMyAdmin


হিসাবে একটি)

  1. ত্রুটি কোড সহ ফাইলটি খুলুন
    টার্মিনাল লোকদের জন্য: sudo nano /usr/share/phpmyadmin/libraries/sql.lib.php
    নিয়মিত লোকদের জন্য:sudo gedit /usr/share/phpmyadmin/libraries/sql.lib.php

  2. শর্তটি সন্ধান করুন - মূলত অনুসন্ধান করুন $analyzed_sql_results['select_expr']

  3. এখন যুক্তিটি এই সাব অ্যারেটি খালি আছে কিনা তা যাচাই করা উচিত, অথবা এর মান সহ মাত্র 1 টি উপাদান রয়েছে কিনা "*

  4. সুতরাং মূলত এর
    মধ্যে থাকা অবরুদ্ধটি && $analyzed_sql_results['select_from']
    এবং এর && count($analyzed_sql_results['select_tables']) == 1
    মতো কিছু দেখতে পাওয়া উচিত

&& (
    empty($analyzed_sql_results['select_expr']) //the sub array is empty,
    || //or,
    (
        (count($analyzed_sql_results['select_expr']) == 1) //it has just 1 element
        && //and at the same time
        ($analyzed_sql_results['select_expr'][0] == '*') //the 1 element value is "*"
    )
)

আপনার কোডটি কেন যুক্ত করা এবং সুশোভিত করা যায় তার একটি উত্তম উদাহরণ এটি যদি সঠিকভাবে ঘৃণা করা হয় তবে আমি বিশ্বাস করি এটি কখনই ঘটবে না বা কমপক্ষে আরও সহজেই পাওয়া যাবে।


আমি আমার ম্যাকে xampp ইনস্টল করেছি, আমি / usr / share / phpmyadmin ফোল্ডারটি খুঁজে পেলাম না এবং তাই '/usr/share/phpmyadmin/libraries/sql.lib.php' এই দোসরটি আমার জন্য বিদ্যমান, আপনি কি তাতে সহায়তা করতে পারেন?
সৌরভ ভার্মা

@ সৌরভ ভার্মা sql.lib.php বা phpmyadmin ফোল্ডারের জন্য একটি ফাইল অনুসন্ধান সম্পাদন করুন - যদি আপনার phpmyadmin থাকে তবে এটি অবশ্যই কোথাও ইনস্টল করা উচিত
jave.web
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.