मेरे पास एक प्लगइन है जो व्यवस्थापक डैशबोर्ड पर एक मेनू पेज बनाता है:

function dp_manage_admin_menu() {
    add_menu_page('Manage Data', 'Manage Data', 'manage_options', 'manage-data', 'dp_manage_data_page', '');

    add_submenu_page('manage-data', 'Add New', 'Add New', 'manage_options', __FILE__ . '/add-new', 'tm_add_new_page');
}

// Actions
add_action('admin_menu', 'dp_manage_admin_menu');

उस पृष्ठ manage-data में, DB से डेटा हटाने के लिए एक बटन है:

<a href="<?php echo admin_url() ?>admin.php?page=manage-data/manage-data.php?id=<?php echo (isset($result->id)) ? $result->id : ""; ?>" class="btn btn-danger btn-sm">
    <i class="fa fa-trash-o"></i> Delete
</a>

इसलिए यदि मैंने पहला बटन क्लिक किया तो वह "http पर जाता है ://example.com/wp-admin/admin.php?page=manage-data?id=1"

फिर मैं जांचता हूं कि क्या id भेजा गया है, फिर उस परिणाम को हटा दें:

if( isset($_GET['id']) ){
    //Do something.
}

लेकिन मुझे एक त्रुटि मिलती है, जब मैं डिलीट बटन पर क्लिक करता हूं:

Sorry, you are not allowed to access this page.

मैं "http://example.com/wp-admin/ पर जा सकता हूं admin.php?page=manage-data", लेकिन अगर कोई पैरामीटर भेजा जाता है तो मैं इसे अब एक्सेस नहीं कर सकता।

1
user9853119 14 अगस्त 2018, 14:59
ऐसा लगता है कि आपके पास डेटाबेस से हटाने का अधिकार नहीं है
 – 
charan kumar
14 अगस्त 2018, 15:07
मेरे पास कुछ भी करने का अधिकार है, एक और पेज है जहां मैं नया डेटा जोड़ता हूं, जब मैं उस पेज पर डिलीट को रीडायरेक्ट करता हूं और उस पैरामीटर को भेजता हूं, तो इसे हटा दिया जाता है
 – 
user9853119
14 अगस्त 2018, 15:09
दिलचस्प हिस्सा जो इस तरह के प्रश्न का उत्तर देने में मददगार होगा, वह है आपके अनुरोध को संभालने वाला कोड (if( isset($_GET['id']) ){ … } के अंदर)। जैसा कि यह खड़ा है, इस प्रश्न का उत्तर केवल अनुमान लगाकर ही दिया जा सकता है।
 – 
feeela
14 अगस्त 2018, 15:12
सभी का धन्यवाद, समस्या यूआरएल में थी, मैं इसे दिखाने के लिए अपने प्रश्न का उत्तर देता हूं
 – 
user9853119
14 अगस्त 2018, 15:19
या मुझे सवाल हटा देना चाहिए?
 – 
user9853119
14 अगस्त 2018, 15:19

3 जवाब

मुझे समस्या का पता चला, यूआरएल कुछ ऐसा दिखता है " http://example.com/wp-admin/admin.php?page=manage-data?qid=6"।

जबकि वहाँ एक और पैरामीटर है ?page=manage-data

इसलिए मुझे दूसरे पैरामीटर का विज्ञापन करने के लिए & का उपयोग करना चाहिए।

यूआरएल "http://example.com/wp होना चाहिए -admin/admin.php?page=manage-data&qid=6"

0
user9853119user9853119 14 अगस्त 2018, 15:18

"परिभाषित ('DISALLOW_FILE_MODS', सत्य) के लिए wp-setting.php फ़ाइल भी खोजें;" और इसे हटा दें। उपरोक्त में से कोई भी समाधान मेरे लिए काम नहीं करता है सिवाय इसके!

0
Kmaj 29 नवम्बर 2018, 06:59

लोड बैलेंसर HTTPS ट्रैफ़िक लेता है, फिर इसे HTTP के रूप में पोर्ट 80 पर वर्डप्रेस सर्वर पर अग्रेषित करता है।

मैं वर्डप्रेस स्थापित करने के बाद एक रीडायरेक्ट लूप के साथ समस्याएँ चला रहा था। समाधान इस बिट कोड को wp-config.php में जोड़ना था:

सुनिश्चित करें कि पंक्तियाँ पृष्ठ के शीर्ष पर होनी चाहिए। मुझे यह मुद्दा मिला। और हो सकता है कि यह मदद कर सकता है।

define('FORCE_SSL_ADMIN', true);
if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
 $_SERVER['HTTPS']='on';
0
Amit Verma 21 अक्टूबर 2019, 20:12