uploadprogress_get_info() - uploadprogress.so
Bonjour,
Voilà j'ai commencé à coder mon uploader avec jquery et php.
Pour récupérer la progression de l'upload, j'ai décidé d'utiliser l'extension pecl uploadprogress.so .
Je l'ai installé en root sur debian :
Code:
pecl install uploadprogress
qui me retourne :
Code:
Failed to download pecl/uploadprogress within preferred state "stable", latest release is version 0.9.2, stability "beta", use "channel://pecl.php.net/uploadprogress-0.9.2" to install
Alors je relance en faisant :
Code:
pecl install channel://pecl.php.net/uploadprogress-0.9.2
L'extension s'est installé, et me demande d'ajouter extension=uploadprogress.so dans php.ini.
J'execute, redémmare apache2 et vérifie dans le phpinfo qui me retourne :
Code:
1 2 3 4 5 6
|
uploadprogress 0.9.2
Directive Local Value Master Value
uploadprogress.file.contents_template /tmp/upload_contents_%s /tmp/upload_contents_%s
uploadprogress.file.filename_template /tmp/upt_%s.txt /tmp/upt_%s.txt
uploadprogress.get_contents 0 0 |
Jusque la rien de compliqué.
Je test mon script d'upload, la bar d'upload ne bouge pas, je debug en ouvrant 2 fenetre, l'une avec le formulaire suivant :
Code:
1 2 3 4 5 6 7 8
|
<form action="" method="POST" id="uploadform" enctype="multipart/form-data" >
<input type="hidden" name="UPLOAD_IDENTIFIER" id="progress_key" value="<?php $uuid ?>" />
<input type="file" name="ulfile" id="ulfile" />
<input type="submit" value="Upload" />
</form> |
l'autre avec le php progress.php:
Code:
1 2 3 4 5 6 7 8 9 10 11
|
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
error_reporting(E_ALL);
if (@$_GET['id']) {
echo json_encode(uploadprogress_get_info($_GET['id']));
exit();
}
$uuid = uniqid(); |
Je debug en récupérant $uuid avant l'upload et pendant l'upload d'un fichier sur la deuxieme progress.php?id=001456674(ex)
J'ai tout éssayé, rien à faire la fonction uploadprogress_get_info me retourne toujours un NULL.
Alors que l'upload se fait.
J'ai éssayé avec le module APC et la aucun problèmes! Mais apc retourne moins d'informations que uploadprogress donc je prefererais faire fonctionner uploadprogress.
NB : J'ai augmenter la taille max d'upload php dans le php.ini, change rien.
Ma version PHP : PHP Version 5.2.0-8+etch13
Quelqu'un aurait réussi a la faire fonctionner correctement? Si oui, peut-il m'expliquer sa démarche ou ce qui ne vas pas/qui manque dans la mienne.
Merci d'avance.
Austriker