Forum Clubic

[JS/DHTML] Hash md5 d'un fichier à uploader

:hello:

Bon voila, j’aimerais qu’en local, js me calcule le md5 du fichier qui va etre uploader pour le passer au serveur…
Ainsi, si le md5 est connu du seveur, on arrete l’upload, sinon on continue…

Mais je ne vois pas comment faire ce hash …
D’ou ma question : “mais c’est comment qu’on fait la dit donc?” :paf:

merci :wink:

Du hash en javascript/html? A mon humble avis, ce n’est pas possible :slight_smile: javascript n’a aucun accès en lecture à un fichier (à la limite à un flux) et quant à faire un hash md5 faudrait implémenter la fonction en js, ce qui n’est pas gagné.

Tu n’as pas trop le choix : t’envoie sur le serveur, et bye sinon. Ou alors t’impose à l’utilisateur d’entrer le hash…

http://blogs.developpeur.org/cyril/archive…Javascript.aspx

Pour l’accés au fichier, je sais pas… Il y a Uber Uploader qui peut vérifier la taille du fichier mais je n’ai pas pu me plonger dans le code pour voir comment
http://uber-uploader.sourceforge.net/

Merci :slight_smile:

dans ce cas, tu peux tenter de lire le fichier avec Ajax, mais AJAX est général interdit hors domaine du site.

Comment faire pour lire avec AJAX ?
Merci :slight_smile:

Tu créé un nouvel objet xmlhttprequest et tu executes ton script php qui va fairele boulot, ce script te renvoie les valeurs dont tu as besoin avec la méthode responseText ou responseXML (selon ton besoin).

Rien compris

En gros, si ton script AJAX se trouve sur clubic.com, le navigateur n’autorisera pas une requête pointant vers google.com car le nom de domaine est différent :wink:
A ma connaissance, il n’existe aucun moyen de lire un fichier local en javascript sans utiliser un plugin tiers (Java, ActiveX, ou dans une certaine mesure Flash), … et heureusement :stuck_out_tongue:

Voilà.

Si la page est sur le système de fichier, alors tu pourras je pense y accéder via AJAX et responseText contiendra le contenu du document.

toutafé, impossible en Javascript, donc à faire en Java ou ActiveX.

le AJAX fera un appel serveur pour contrôler le ficheir de toutes façons, donc aucune valeur ajoutée pour rapport à un upload/rechargement de la page.

j’ai trouvé cet exemple en Java, à adapter pour tes besoins:
http://www.jensign.com/JavaScience/www/mes…stj2/index.html

notamment, si au lieu de lancer un boite de dialogue sur le fichier, tu récupère directement la valeur de ton champ d’upload via du javascript/Java, tu as presque tout.

c’est avec JSObject, je crois, que ton applet peut connaitre les éléments de ta page:
http://java.sun.com/j2se/1.4.2/docs/guide/…de/java_js.html

edit: ah tien, je savais pas qu’ajax puvait accéder au système de fichier local… mais ensuite, il faut encore implémenter le md5 en Javascript…

md5js, déjà fait :slight_smile:

Le seul souci c’est que ce soit fait en local :slight_smile: