Проблема с установкой php uploadprogress

Beckie

Новичок
Проблема с установкой php uploadprogress

Почитал тут темы про эту проблему. Тогда фикса небыло, а теперь вроде, как есть, но все равно почему то не работает. :D

Во тут:
http://downloads.php.net/pierre/

Тут дома стоит WAMP. Скачал, закинул в ext, добавил в php.ini

Перезапускаю WAMP, делаю рестарт. В php extensions в самом WAMP upload progress появляется, а вот в phpinfo() нет и так тоже:

PHP:
if (function_exists("uploadprogress_get_info")) {
	echo 'exist';
} else {
	echo 'does not';
}

if (extension_loaded('uploadprogress')) {echo "extension is loaded";} else {echo 'extension is not loaded';}
Оба выдают false


Не подскажете, как установить это чудо? Очень хочется сделать полосу загрузки. Уже кучу разных версий dll нашел, но все отказываются устанавливаться. Может я что-то не то делаю?

В печали... ^_^

-~{}~ 26.12.09 23:20:

Кстати Alternative PHP Cache (APC) тоже пробовал устанавливать. Тоже не устанавливается.

-~{}~ 27.12.09 02:56:

http://svn.php.net/viewvc/pecl/uploadprogress/trunk/

Куда вообще пихать:

config.m4
config.w32
php_uploadprogress.h
uploadprogress.c

Или как запускать...

-~{}~ 27.12.09 02:57:

uploadprogress.c содержит как раз те функции, которые и требуются
 

dimagolov

Новичок
Куда вообще пихать:

config.m4
config.w32
php_uploadprogress.h
uploadprogress.c
это в компилятор скармливать нужно :) вряд ли у тебя получится. на виндах по крайней мере, давно ужн под винды pecl не собирают
 

baev

‹°°¬•
Команда форума
http://www.php.net/manual/en/install.pecl.windows.php

-~{}~ 27.12.09 03:32:

Вот блин…
Beckie, а почему Вы тут:
http://downloads.php.net/pierre/
— скомпиленную dll не взяли?

Как Вы думаете, что там означает «Win32» в названиях дистрибутивов?
 

Beckie

Новичок
Эм я её с самого начала и брал. :)

Ладно, пошел спать. Завтра буду разбираться дальше.

Походу надо будет реролиться обратно на php 5.2.

Облом сегодня конечно словил конкретный. Уже даже gif для прогресс бара подобрал и скрипт написал, а тут такая подстава. :-z
 

dimagolov

Новичок
Походу надо будет реролиться обратно на php 5.2.
почему? Там же как и под 5.3 есть сборки?

Только я вот понять не могу, неужели под ЛЮБУЮ версию 5.2.х покатит одна и та же dll? Вроде как бинарной совместимости между разными релизами не наблюдалось. Или это под последний релиз из ветки?
 

fixxxer

К.О.
Партнер клуба
бинарная совместимость - она в пределах версии zend api и типа сборки (zts, debug on/off); это как раз часто отражено в имени каталога с ext-ами (под никсами).

под win32 еще может иметь значение, какой версией msvc собрано.

вообще php просто не даст подключить extension с неправильной версией, но объяснять виндузятникам где в их операционной системе читать логи мне давно надоело, не winfaq тут в конце концов.
 

Beckie

Новичок
Нашел рабочую библиотеку, была в сборке WAMP 2.0g-1 c php5.2.9-1 внутри.

http://i192.photobucket.com/albums/z228/Somebi/properties.jpg

http://i192.photobucket.com/albums/z228/Somebi/working.jpg

Может кому пригодится. Правда там версия uploadprogress 0.3.1-dev :)

Сегодня, как освобожусь, попробую дописать свой прогресс бар и гляну, что там нотсах новых версий.





http://pecl.php.net/package-changelog.php?package=uploadprogress

Надеюсь, что с path к temp папке у него не будет под win32.
Там в исходниках, вроде по дефолту unix path.

В 1.0.1 добавили:
- Default temporary directory is taken from system settings during compile time (guenter).





Вы не поверите, но пришел домой. Врубил комп и uploadprogress мистическим образом опять отрубился и больше не хочет врубаться.

Что это за бред сумашедшего? :D

Как и почему extensions могут сами выключаться?






Такс. Плюнул на WAMP, установил XAMPP. Все заработало, даже с последней библиотекой.

Даже на PHP 5.3.1

Все написал, в ответе ничего не приходит... :D

То есть ответ empty. Порылся в исходниках примера. Там тоже

PHP:
$Info = uploadprogress_get_info($_POST["UploadID"]);
$info пустой








Zend Framework ведь не может мешать работе скрипта?

Оставил пустым .htaccess и попробовал снова. Тоже ответ от uploadprogress_get_info(); приходит пустой.



Так как, я загружаю файлы с помощью iframe, то подумал, что содержимое UPLOAD_IDENTIFIER не доходит.

Вывел $_POST на стороне сервера, он доходит нормально.


У кого-то есть мысли по этому поводу?
Может порыться в не компилированных исходниках?
 

dimagolov

Новичок
я не в курсе этого экстеншина, но из банальной логики UPLOAD_IDENTIFIER должен как быть в iframe-форме, которая производит загрузку файла, а ПЕРЕД началом загрузки он должен быть взят в родительский фрейм для использования в ajax-запосах о прогрессе. Ведь как иначе экстеншин сможет локализовать загрузку?
 

Beckie

Новичок
В общем решил проблему.

Проблема была с путями к temp папке.

Указал uploadprogress путь к temp папке и все заработало.

-~{}~ 27.12.09 23:09:

Автор оригинала: dimagolov
я не в курсе этого экстеншина, но из банальной логики UPLOAD_IDENTIFIER должен как быть в iframe-форме, которая производит загрузку файла, а ПЕРЕД началом загрузки он должен быть взят в родительский фрейм для использования в ajax-запосах о прогрессе. Ведь как иначе экстеншин сможет локализовать загрузку?
Ну это да, он там это генерит форму в javascripte.

-~{}~ 28.12.09 14:25:

Такс, написал progress bar. Теперь встала проблема с Оперой.

Писал на основе вот этого экстэншена.

Что-то Опера не дружит с iframe загрузкой файлов.

Или мне кажется? Вообще 0 реакции.

Файл выбираю, должна начаться загрузка, а все стоит. Сейчас дебажить начну, может доберусь до места ступора.

Кто-то встречался с этой проблемой? Как решали?


Заранее спасибо.


Если кому интересно, делал точно такую же полосу загрузки:

http://digitarald.de/project/fancyupload/3-0/showcase/attach-a-file/
 
Сверху