загрузка файла в плагин Wordpress админ как - PullRequest
1 голос
/ 25 июня 2011

я делаю небольшую утилиту imagemerger для моего клиента ниже, где я нахожусь до

/* Runs when plugin is activated */
register_activation_hook(__FILE__,'ImageMerge_install'); 

/* Runs on plugin deactivation*/
register_deactivation_hook( __FILE__, 'ImageMerge_remove' );

function ImageMerge_install() {

    add_option("ImageMerge_data", 'Default', '', 'yes');

}

function ImageMerge_remove() {
/* Deletes the database field */
    delete_option('ImageMerge_data');
}


if ( is_admin() ){

/* Call the html code */
add_action('admin_menu', 'ImageMerge_admin_menu');

    function ImageMerge_admin_menu() {
            add_options_page('Image Merging Utility', 'Image Merger', 'administrator',
            'ImageMerger', 'ImageMerge_html_page');
        }

    function ImageMerge_html_page()
    {
            echo '<pre>'.print_r($_REQUEST);
        ?>

<div>


    <form name="Image" enctype="multipart/form-data" action="" method="post">
        <p>First Image = <input type="file" name="first" id="first" /></p>
        <p>Second Image =<input type="file" name="second" id="second" /> </p>
        <p><input type="submit" /></p>


    </form>
</div>

<?php
    }
}

?>

Приведенный выше код отображает форму правильно с двумя полями ввода, теперь я хочу получить содержимое этих двухфайлы и применить к ним обработку изображений, а затем сделать их единым изображением, чтобы мой клиент мог вставить их позже в редактор сообщений.Для этого я собираюсь предоставить своему клиенту файл, который нужно сохранить в какой-то папке и дать клиенту инструкции по встраиванию создаваемого им изображения из этой утилиты в его сообщения.

Пожалуйста, объясните мне, как я могу получить данные поста, особенно $ _FILES, которые я не хочу сейчас сохранять в базу данных, но в будущем это может быть да.

1 Ответ

0 голосов
/ 24 февраля 2012

Редактировать: Я полагаю, что это PHP вопрос, а не WordPress вопрос, хотя я все равно разместил решение.

Это просто вопрос использования $_FILES вместо $_REQUEST.

Если вы измените echo '<pre>'.print_r($_REQUEST); на это:

echo '<pre>'.print_r($_FILES);

А затем загрузите файл, используя вашу форму, он покажет файл, который только что использовался в форме. Я проверил это и получил этот результат после загрузки того же изображения, которое использовалось в моем Gravatar:

Array ( [first] => Array ( [name] => HoaH-Sonic-3Dredesign.jpg [type] => image/jpeg [tmp_name] => C:\xampp\tmp\phpFB13.tmp [error] => 0 [size] => 69181 ) [second] => Array ( [name] => [type] => [tmp_name] => [error] => 4 [size] => 0 ) )
...