Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.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 在使用Dropzone.js时,如何使maksbd19';wordpress的集成工作_Php_Wordpress_Dropzone.js - Fatal编程技术网

Php 在使用Dropzone.js时,如何使maksbd19';wordpress的集成工作

Php 在使用Dropzone.js时,如何使maksbd19';wordpress的集成工作,php,wordpress,dropzone.js,Php,Wordpress,Dropzone.js,我试图使dropzone.js在基于maksbd19提出的解决方案的wordpress框架内工作。我的问题是关于调试我实现的方法: 请参见此处的指南: 但我无法让他的解决方案正常工作 以下是根据帖子中的答案加载php兼容性文件时出现的错误: 状态代码:500内部服务器错误PHP解析错误:语法错误, 第8行的…wordpress_compability.php中出现意外的T_字符串 在第8行,我有一行: wp_localize_script('my-script','dropParam', $dr

我试图使dropzone.js在基于maksbd19提出的解决方案的wordpress框架内工作。我的问题是关于调试我实现的方法:

请参见此处的指南: 但我无法让他的解决方案正常工作

以下是根据帖子中的答案加载php兼容性文件时出现的错误:

状态代码:500内部服务器错误PHP解析错误:语法错误, 第8行的…wordpress_compability.php中出现意外的T_字符串

在第8行,我有一行:

wp_localize_script('my-script','dropParam', $drop_param);
下面是我使用的完整代码:

html文件: 负责人:

PHP文件:

<?
wp_enqueue_script('dropzone',"/var/www/vhosts/jtc.ae/httpdocs/pre/wp/wp-content/themes/Amazing_japan_HP/frameworks/dropzone/");
wp_enqueue_script('my-script',"/var/www/vhosts/jtc.ae/httpdocs/pre/wp/wp-content/themes/Amazing_japan_HP/frameworks/dropzone/dropzone.js",array('jquery','dropzone'));
$drop_param = array(
  'upload'=>admin_url( 'admin-post.php?action=handle_dropped_media' ),
  'delete'=>admin_url( 'admin-post.php?action=handle_deleted_media' ),
)
wp_localize_script('my-script','dropParam', $drop_param);


add_action( 'admin_post_handle_dropped_media', 'BMP_handle_dropped_media' );

// if you want to allow your visitors of your website to upload files, be cautious.
add_action( 'admin_post_nopriv_handle_dropped_media', 'BMP_handle_dropped_media' );



function handle_dropped_media() {
    status_header(200);

    $upload_dir = wp_upload_dir();
    $upload_path = $upload_dir['path'] . DIRECTORY_SEPARATOR;
    $num_files = count($_FILES['file']['tmp_name']);

    $newupload = 0;

    if ( !empty($_FILES) ) {
        $files = $_FILES;
        foreach($files as $file) {
            $newfile = array (
                    'name' => $file['name'],
                    'type' => $file['type'],
                    'tmp_name' => $file['tmp_name'],
                    'error' => $file['error'],
                    'size' => $file['size']
            );

            $_FILES = array('upload'=>$newfile);
            foreach($_FILES as $file => $array) {
                $newupload = media_handle_upload( $file, 0 );
            }
        }
    }

    echo $newupload;    
    die();
}
?>


有什么想法吗?

正如错误所说,有一个意外的字符串。您应该检查是否正在将预期参数传递给函数-请参阅

而且这两条线似乎走错了路

wp_enqueue_script('dropzone',"/var/www/vhosts/jtc.ae/httpdocs/pre/wp/wp-content/themes/Amazing_japan_HP/frameworks/dropzone/");
wp_enqueue_script('my-script',"/var/www/vhosts/jtc.ae/httpdocs/pre/wp/wp-content/themes/Amazing_japan_HP/frameworks/dropzone/dropzone.js",array('jquery','dropzone'));
wp\u enqueue\u script()将脚本的路径作为第二个参数()的路径,因此第一行可能是

wp_enqueue_script('dropzone',"/var/www/vhosts/jtc.ae/httpdocs/pre/wp/wp-content/themes/Amazing_japan_HP/frameworks/dropzone/dropzone.js");
第二个应该是自定义脚本的路径,它依赖于dropzone.js,类似于

wp_enqueue_script('my-script',"/var/www/vhosts/jtc.ae/httpdocs/pre/wp/wp-content/themes/Amazing_japan_HP/frameworks/dropzone/myscript.js",array('jquery','dropzone'));
或者可能

wp_enqueue_script('my-script',"/var/www/vhosts/jtc.ae/httpdocs/pre/wp/wp-content/themes/Amazing_japan_HP/frameworks/dropzone/wordpress_compability.js",array('jquery','dropzone'));
如果wordpress_compability.js依赖于dropzone

如果您修复了您正在使用的脚本,那么wp_localize_script()可能会发现它的第一个参数的格式更好。或许问题在于接下来的两个参数(数据)

编辑: 此外,这些东西也不对:

<script src="<?php bloginfo('template_url'); ?>/frameworks/dropzone/dropzone.js"></script>
<script src="<?php bloginfo('template_url'); ?>/frameworks/dropzone/wordpress_compability.js"></script>
<script src="<?php bloginfo('template_url'); ?>/frameworks/dropzone/wordpress_compability.php"></script>

@maksbd19有什么想法吗?你贴得太多了。问一个关于某段代码的问题,在这段代码中,您遇到了一些问题。我确实将特定的第8行粘贴到了有问题的地方。对于那些感兴趣的人,我在问题的底部添加了完整的代码。如果我只问他们关于第8行的问题,人们会说我粘贴得太少了…@mesqueeb-在PHP中,你给出的行号是出现错误的地方,但它通常是由前一行的某些内容引起的。在本例中,前一行(数组声明)后面没有分号。基本上,如果您遇到了这个错误,您需要包含前面的代码,但是后面的任何代码都可能被忽略。谢谢!我发现这确实是一种不恰当的方式来包含php文件。我试图弄明白OP这句话的意思:“我发现使用admin-post.php文件非常令人惊讶。因此,我在dropzone初始化之前初始化了drophandler变量,如下所示…”这是否意味着我需要向admin-post.php文件中添加这段代码?@mesqueeb我真的很抱歉造成混淆。我的意思是,我发现构建文件
(aminpost.php)
在处理表单数据方面非常方便。你不必为此担心。只需将脚本排队,本地化环境变量,并将这些操作放在加载wp时加载的地方。不需要额外的工作。如果你不能上班就回来。谢谢你的帮助。对不起,多年后我把它标对了。非常感谢您对我的问题投赞成票!!:D
wp_enqueue_script('my-script',"/var/www/vhosts/jtc.ae/httpdocs/pre/wp/wp-content/themes/Amazing_japan_HP/frameworks/dropzone/myscript.js",array('jquery','dropzone'));
wp_enqueue_script('my-script',"/var/www/vhosts/jtc.ae/httpdocs/pre/wp/wp-content/themes/Amazing_japan_HP/frameworks/dropzone/wordpress_compability.js",array('jquery','dropzone'));
<script src="<?php bloginfo('template_url'); ?>/frameworks/dropzone/dropzone.js"></script>
<script src="<?php bloginfo('template_url'); ?>/frameworks/dropzone/wordpress_compability.js"></script>
<script src="<?php bloginfo('template_url'); ?>/frameworks/dropzone/wordpress_compability.php"></script>