Recupérer les infos du fichier dans un module avec la fonction _nodeapi

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour,

Quand j'intégre un fichier .zip via un contenu filefield, j'ai besoin qu'il se dezippe tout seul.

J'ai donc créé un module contenant un hook_nodeapi.

Le probleme est que pour traiter le fichier et le dezipper, j'ai besoin des infos de ce fichier (son nom, le fichier en lui même, son extension...).

Pourriez-vous me dire quel variable utiliser pour recupérer ces infos car $file ne me retourne rien. Pour info mon champs fichier se nomme field_flipbook.

Voici ma fonction :
function dezipper_flipbook_nodeapi(&$node, $op, $a3 = NULL, $a4 = NULL) {
switch ($op) {
case 'insert':
case 'update':
$destination=file_directory_path()."/html/magazines/";

if ($file = file_save_upload('field_flipbook', $validators, $destination)) {
$zip = new ZipArchive;
$nomfichier=$form_state['values']['html'] = $file->filepath;
if ($zip->open($nomfichier) === TRUE) {
$zip->extractTo('sites/default/files/html/magazines/');
$zip->close();
}
/*On efface le fichier zip d origine */
unlink($nomfichier);
}
break;

}
}

Merci d'avance pour votre aide !

Forum : 
Version de Drupal :