darkhat Posted December 31, 2006 Share Posted December 31, 2006 Bonjour tout le monde, En fait, si un utilisateur uploade un .exe sur le site... je voudrais déplacer le .exe vers le dossier partagé d'Emule (donc ça c'est déjà codé) mais après je voudrais si c'est possible qu'il trouve direct le hash du lien ed2k afin de le publier direct sur le site... Est-ce que c'est possible ? Si oui, Comment faire ? Merci d'avance Link to comment Share on other sites More sharing options...
Amour Posted December 31, 2006 Share Posted December 31, 2006 http://fr.php.net/manual/fr/function.hash-file.php avec l'algo "md4" Link to comment Share on other sites More sharing options...
Yangzebul Posted December 31, 2006 Share Posted December 31, 2006 The ed2k hash function is a variant of MD4 but is incompatible with MD4, as it differs in the way the hash is finalized Par exemple : IE7-WindowsXP-x86-fra.exe MD4° : 6a6795d4ef9523e8c590ae74e7d6ab52 ED2K : 5a86bf319afc5fe4374546cb02a2f19e Firefox-1.0.exe MD4° : c810d98a2e521b3ef91f37914f013b08 ED2K : c810d98a2e521b3ef91f37914f013b08 Cela ne marche que pour les fichiers ayant une taille inférieure à 10Mo. Au delà le hash généré est différent. Link to comment Share on other sites More sharing options...
Amour Posted December 31, 2006 Share Posted December 31, 2006 ah zut j'étais persuadé que c'était du simple md4 Link to comment Share on other sites More sharing options...
darkhat Posted January 2, 2007 Author Share Posted January 2, 2007 The ed2k hash function is a variant of MD4 but is incompatible with MD4, as it differs in the way the hash is finalized Par exemple : IE7-WindowsXP-x86-fra.exe MD4° : 6a6795d4ef9523e8c590ae74e7d6ab52 ED2K : 5a86bf319afc5fe4374546cb02a2f19e Firefox-1.0.exe MD4° : c810d98a2e521b3ef91f37914f013b08 ED2K : c810d98a2e521b3ef91f37914f013b08 Cela ne marche que pour les fichiers ayant une taille inférieure à 10Mo. Au delà le hash généré est différent. Merci pour l'explication... Mais comment on fait finalement ? C'est le lien donné par Amour au dessus ? Merci d'avance Link to comment Share on other sites More sharing options...
darkhat Posted January 2, 2007 Author Share Posted January 2, 2007 Bon j'ai essayé avec hash_file : j'ai eu une erreur, surement dû à un module manquant à Apache. Voilà l'erreur : call to undefined function : hash_file() Et je vous donne le code : Alors on uploade un fichier, le formulaire ayant comme nom ed2k : if (is_uploaded_file($_FILES["ed2k"]["tmp_name"])){ move_uploaded_file($_FILES["ed2k"]["tmp_name"],$_FILES["ed2k"]["name"]); $hash = hash_file('md5', '$_FILES["ed2k"]["name"]'); $size=$_FILES["ed2k"]["size"]; $ed2k='ed2k://|file|'.$nom.'|'.$size.'|'.$hash; Alors ? Merci d'avance pour l'aide edit : Bien sûr ce n'est pas tout le script, donc les accolades se ferment par la suite Link to comment Share on other sites More sharing options...
astero-H Posted January 3, 2007 Share Posted January 3, 2007 Bon j'ai essayé avec hash_file : j'ai eu une erreur, surement dû à un module une extension manquante à Apache PHP. Link to comment Share on other sites More sharing options...
Amour Posted January 3, 2007 Share Posted January 3, 2007 Bon j'ai essayé avec hash_file : j'ai eu une erreur, surement dû à un module manquant à Apache. Voilà l'erreur : call to undefined function : hash_file() Et je vous donne le code : Alors on uploade un fichier, le formulaire ayant comme nom ed2k : if (is_uploaded_file($_FILES["ed2k"]["tmp_name"])){ move_uploaded_file($_FILES["ed2k"]["tmp_name"],$_FILES["ed2k"]["name"]); $hash = hash_file('md5', '$_FILES["ed2k"]["name"]'); $size=$_FILES["ed2k"]["size"]; $ed2k='ed2k://|file|'.$nom.'|'.$size.'|'.$hash; Alors ? Merci d'avance pour l'aide edit : Bien sûr ce n'est pas tout le script, donc les accolades se ferment par la suite normal pour hash_file qui n'existe que depuis PHP 5.1.2, le serveur doit pas être à jour Sinon, non ce n'est pas md5, mais md4, et apparemment ne fonctionne que pour les fichiers plus petits que 10 Mo (voir plus haut) Tant pis, va falloir trouver autre chose Link to comment Share on other sites More sharing options...
Yangzebul Posted January 3, 2007 Share Posted January 3, 2007 Bah si ça n'existe pas déjà il ne reste plus qu'à regarder les sources de la mule et l'écrire sois même. Tu peux déjà prendre comme base le md4 vu que ce n'est qu'une variante, le plus gros du travail est déjà fait. Link to comment Share on other sites More sharing options...
Yangzebul Posted January 3, 2007 Share Posted January 3, 2007 Bon j'ai tapé dans google "ed2k php hash" et j'ai trouvé la solution en deuxième page... Il faudrait quand même ne pas trop abuser là. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.