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 : //