Dotclear : Supprimer les informations EXIF de la base de données
Une seule requète SQL suffit ( remplacer BDD par le nom de votre base de données ) :
UPDATE `BDD`.`dc_media` SET `media_meta` = 'NULL'
Bonus
Pour supprimer aussi les meta données EXIF des fichiers images sur le serveur, il faut utiliser un peu de PHP si on à pas d'accès console.
Il suffit de créer un fichier php à la racine du dossier contenant toutes les images sur le serveur, et le script se chargera de supprimer récursivement les infos EXIF des fichiers Jpgs.
<?php
// On verifie le type de fichier
function isfile($file){
return preg_match('/^[^.^:^?^\-][^:^?]*\.(?i)' . getexts() . '$/',$file);
}
function getexts(){
// on vire les EXIFs des JPGs
return '(jpg|JPG)';
}
// On lance l'execution
$folder = dirname(__FILE__) . '/';
foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($folder)) as $entry) {
if (isfile($entry)) {
$image = $entry;
$img = imagecreatefromjpeg($image);
imagejpeg($img,$image.'.new',85);
imagedestroy($img);
rename($image,$image.'.old' );
rename($image.'.new',$image );
unlink($image.'.old');
echo $image.' OK <br/>';
}
}
?>
Avec un accès console, il suffit d'utiliser imagemagick :
find ./folder_of_images -name '*.jpg' | xargs mogrify -strip
// source : //