2010-03-06 4 views
2

Я пытаюсь реализовать SwfUpload на своей веб-странице, и я использую php для сохранения файлов на сервере. Как первый раз, когда я использую этот компонент, я выбираю запустить алгоритм из команды SwfUpload (http://swfupload.org/forum/generaldiscussion/214): я поместил его в файл, и я сказал, что элемент управления используется в качестве файла кода.PHP и SwfUpload

Это не сработало, поскольку я прошу помощи, но то, что действительно сводит меня с ума, это то, что я действительно не знаю, как отлаживать этот материал! Запрос файла инкапсулируется в объект flash, и я не могу получить от него никакой обратной связи, если что-то пойдет не так.

Кто-нибудь более опытен, чем я об этом контроле?

Благодаря

ответ

1

Одна вещь, которую вы можете сделать, если все остальное терпит неудачу, чтобы сделать upload.php добавить в файл журнала отладочных сообщений. Пример: file_put_contents("swfupload.log", print_r($_REQUEST, 1), FILE_APPEND);

Единственная сложная вещь, касающаяся swfupload, которую вам нужно понять, заключается в том, что компонент Flash запускается с другим банком cookie (по соображениям безопасности), поэтому вам нужно вручную сообщить об этом (с помощью параметра flash) session_id, который вы сейчас используете на сервере, поэтому, когда он делает HTTP-запрос upload.php, он передает этот session_id в параметре $_GET, а скрипт php запускает сеанс с этим конкретным идентификатором: session_start($_GET['SESSION_ID']);. С этого момента upload.php ведет себя точно так же, как и любой другой php-код с доступными данными сеанса. Вы получаете $_FILES, переместите их в соответствующую папку, сохраните их в db, и все.

0

Ну SWFUpload нужно загрузить файл в какой-то сценарий, так что вы можете войти в файл внутри этого сценария на основе данных, полученных ...

0

О, это боль для отладки.

Один из способов получить доступ к выходу скрипта (который может быть некоторыми фатальными ошибками, которые вы не можете зарегистрировать или что-то еще) - использовать прокси-сервер, такой как fiddler, который показывает весь трафик http.

Иногда бывает сложно получить прошивку с использованием прокси. Возможно, вам потребуется настроить прокси-сервер в IE, даже если вы используете другой браузер.