Problème de validation pour un fichier audio

Par lakamark, il y a 9 ans


Bonjour,

Voila je rencontre un petit problème avec mon code.

Ce que je fais

J'essais de faire valider un fichier audio avant de le téléversé sur mon serveur.

$validator ->requirePresence('audio_file', 'create') ->notEmpty('audio_file','create') ->add('audio_file','mimeType',[ 'rule' => ['mimeType',['audio/wav','audio/mp3']] ]);

Ce que je veux

Quie la règle de validation n'accepte que des fichier mp3 ou wav

Ce que j'obtiens

La règle de validation continue à me bloquer même si c'est un fichier wav ou un fichier mp3 Je vois bien le tableau du fichier dans mes donnée avant la validation :

[ 'title' => 'Distance', 'description' => 'Teste', 'category_id' => '3', 'online' => '1', 'status' => 'private', 'download' => '0', 'audio_file' => [ 'name' => 'teste.wav', 'type' => 'audio/wav', 'tmp_name' => '/tmp/phpMGoshQ', 'error' => (int) 0, 'size' => (int) 45158444 ], 'artwork_file' => [ 'name' => '', 'type' => '', 'tmp_name' => '', 'error' => (int) 4, 'size' => (int) 0 ] ]

Merci de votre aide en avance

3 réponses

Lartak, il y a 9 ans

Bonjour.
Je ne sais pas si tu as fais une erreur de copie, en tout cas dans le code que tu nous montre, une simple quote n'est pas refermée :

'rule' => ['mimeType', ['audio/wav','audio/mp3]]
yanis-git, il y a 9 ans

Je ne connais pas du tout CakePHP, ceux-ci est donc à prendre avec des pincettes, mais n'est il pas préférable de faire ton propre validateur.
En te basant sur le retour de cette fonction : http://php.net/manual/fr/function.mime-content-type.php

tu pourrais toi même vérifier le mimetype.

lakamark, il y a 9 ans

@Lartak C'est une erreur de quand j'ai copier le code.