Overview
Comment: | Eviter une erreur de clé non unique dupliquée à cause d'un duplicata de hash, quand le formulaire javascript ne marche pas ça peut arriver, signalé par Terry. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
c020f63920dc6273deb765a910179b3a |
User & Date: | bohwaz on 2015-10-10 08:11:16 |
Other Links: | manifest | tags |
Context
2015-10-10
| ||
08:18 | Transmission catégorie en cours dans la pagination, fix [72bfc5da9a4556ded51d50971df2dbd576d87f47] check-in: 61819f034c user: bohwaz tags: trunk | |
08:11 | Eviter une erreur de clé non unique dupliquée à cause d'un duplicata de hash, quand le formulaire javascript ne marche pas ça peut arriver, signalé par Terry. check-in: c020f63920 user: bohwaz tags: trunk | |
08:00 | Oubli d'un champ dans la table rappel_envoyes, créant une erreur lors de la suppression de rappels, voici le patch qui corrige, merci à Nicolas pour le signalement. check-in: cf1e84cda4 user: bohwaz tags: trunk | |
Changes
Modified src/include/lib/Garradin/Fichiers.php from [90ac58cb7c] to [fada28820d].
︙ | ︙ | |||
449 450 451 452 453 454 455 456 457 | $is_image = preg_match('/^image\//', $type); $hash = sha1_file($file['tmp_name']); $size = filesize($file['tmp_name']); $db = DB::getInstance(); $db->exec('BEGIN;'); | > > > > | | | | | | | > | 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 | $is_image = preg_match('/^image\//', $type); $hash = sha1_file($file['tmp_name']); $size = filesize($file['tmp_name']); $db = DB::getInstance(); $db->exec('BEGIN;'); // Il peut arriver que l'on renvoie ici un fichier déjà stocké, auquel cas, ne pas le re-stocker if (!($id_contenu = $db->simpleQuerySingle('SELECT id FROM fichiers_contenu WHERE hash = ?;', false, $hash))) { $db->simpleInsert('fichiers_contenu', [ 'hash' => $hash, 'taille' => (int)$size, 'contenu' => [\SQLITE3_BLOB, file_get_contents($file['tmp_name'])], ]); $id_contenu = $db->lastInsertRowID(); } $db->simpleInsert('fichiers', [ 'id_contenu' => (int)$id_contenu, 'nom' => $name, 'type' => $type, 'image' => (int)$is_image, ]); |
︙ | ︙ |