Drupal: Ztrácí se vám soubory při spuštění CRON?
Na svých drupalovských stránkách jsem zaznamenal divné chování po přidání nového vlastního modulu. Tento problém se na lokálním serveru nevyskytoval. Vždy přes noc se mi smazaly všechny nové obrázky. Naštěstí jsem brzy objevil, kde je problém.
Problém byl v tom, že v noci se spustil CRON, který ty obrázky automaticky smazal, to bylo jasné hned od začátku. Nicméně proč se tak choval?
Bylo to díky mé nedostatečné znalosti práce se soubory prostřednictvím Drupalu (Drupal 6). Každý soubor, který se zapisuje do tabulky files má přiřazen status. Pokud tento status nenastavíme, Drupal považuje tento náš soubor za dočasný a automaticky ho smaže. Níže uvádím příklad vhodného uložení souboru.
<?php
$file = new stdClass();
$file->uid = $user->uid;
$file->filename = $att['title'];
$file->filepath = $att['link'];
$file->filemime = file_get_mimetype( 'temp.' .$att['type'] );
$file->filesize = $att['size'];
$file->status = FILE_STATUS_PERMANENT;
$err = drupal_write_record( 'files', $file);
?>
FILE_STATUS_PERMANENT je konstanta standardně nastavená na 1.
Přidej vlastní názor
Ty