(PECL mongo >=0.9.0)
MongoGridFS::storeUpload — Stocke un fichier téléchargé dans la base de données
name
Le nom du fichier téléchargé à stocker. Il doit correspondre à l'attribut name du formulaire HTML.
metadata
Autres champs de méta-données à inclure dans le document fichier.
Note:
Ces champs peuvent aussi écraser ceux qui auraient pu être créés automatiquement par le driver, tel que décrit dans la documentation MongoDB sur les » fichiers de collection. Une des particularités de ce comportement serait de spécifier un chunkSize ou un _id personnalisé pour le fichier.
Note:
L'index filename contiendra le nom du fichier utilisé.
Retourne l'_id du fichier document sauvegardé. Cela va retourner un MongoId généré tant qu'un _id ne soit explicitement spécifié dans le paramètre extra.
| Version | Description |
|---|---|
| 1.2.5 | Modification du second paramètre en un tableau de méta-données. Avant la version 1.2.5, le second paramètre étaient une chaîne optionnelle permettant d'écraser le nom du fichier. |
Exemple #1 Exemple avec MongoGridFS::storeUpload() et un formulaire HTML
Supposons que vous avez le formulaire HTML suivant :
<form method="POST" enctype="multipart/form-data">
<label for="username">Username:</label>
<input type="text" name="username" id="username" />
<label for="pic">Please upload a profile picture:</label>
<input type="file" name="pic" id="pic" />
<input type="submit" />
</form>
Si vous voulez stocker l'image téléchargé dans MongoDB, vous pouvez le faire grâce au script suivant, gérant la soumission du formulaire :
<?php
$m = new MongoClient();
$gridfs = $m->selectDB('test')->getGridFS();
$gridfs->storeUpload('pic', array('username' => $_POST['username']));
?>