Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php wordpress中的Ajax调用不适用于前端站点的订户用户_Php_Ajax_Wordpress_Permission Denied_Admin Ajax - Fatal编程技术网

Php wordpress中的Ajax调用不适用于前端站点的订户用户

Php wordpress中的Ajax调用不适用于前端站点的订户用户,php,ajax,wordpress,permission-denied,admin-ajax,Php,Ajax,Wordpress,Permission Denied,Admin Ajax,我有一个简单的wordpress表单,可以使用Ajax在wordpress的自定义表中添加数据 我的jquery代码(Ajax代码) 保存数据的php代码 if(!class_exists('bookly_appo_Ajax')) { class bookly_appo_Ajax { public function __construct() { add_action('i

我有一个简单的wordpress表单,可以使用Ajax在wordpress的自定义表中添加数据

我的jquery代码(Ajax代码)

保存数据的php代码

 if(!class_exists('bookly_appo_Ajax')) 
    {
        class bookly_appo_Ajax
        {
            public function __construct()
            {
                add_action('init', array(&$this, 'init'));
            }
            public function init()
            {
                add_action( 'wp_enqueue_scripts', 'enqueue_ajax_booklyapp' );

                function enqueue_ajax_booklyapp($hook) {

                wp_enqueue_script('ajax-script-booklyapp', plugins_url( '/ajax.js?v='.rand(), __FILE__ ), array('jquery')); 
                wp_localize_script('ajax-script-booklyapp', 'ajax_object',
                        array(
                            'ajax_url' => admin_url('admin-ajax.php')
                            )
                        );
            }

            add_action('wp_ajax_add_category_bookly', 'add_category_bookly_callback');
            add_action('wp_ajax_nopriv_add_category_bookly', 'add_category_bookly_callback');
            function add_category_bookly_callback() {
                      $storeid=$_REQUEST['storeid'];

              $rows = $wpdb->insert(
                            $table_category, array(

                                'store_id' => $storeid,
                                 )
                            );
            $lastid = $wpdb->insert_id;
            }
      }
   }
}
我的问题是

  • 当使用管理员用户登录时,我的ajax工作正常,但当使用其他用户登录时 我的网站的用户(订户用户)它的错误“Opps!你没有 有足够的权限访问此页面“
  • 哪种类型 为订阅者提供对所用admin-ajax.php文件的可访问性

  • 我猜你没有为特权和非特权用户定义操作。两种都有吗

    add_action( 'wp_ajax_ACTION', 'bookly_appo_Ajax' );
    add_action( 'wp_ajax_nopriv_ACTION', 'bookly_appo_Ajax' );
    
    在你的php中<代码>wp\u ajax\u nopriv\u操作可能是您缺少的

    add_action( 'wp_ajax_ACTION', 'bookly_appo_Ajax' );
    add_action( 'wp_ajax_nopriv_ACTION', 'bookly_appo_Ajax' );