Table des matières
Upload de fichiers
L'upload est l'envoi de fichiers, de l'ordinateur du visiteur, vers le serveur hébergeant NPDS. Il est entre-autres utilisé pour les avatars personnels, pour les minisites et pour les fichiers joints aux forums
Le fichier upload.conf.php
La plupart les problèmes liés à l'upload sont en fait dûs à une mauvaise configuration du fichier upload.conf.php. Celui-ci se trouve dans /modules/upload/.
Paramètres d'upload
DocumentRoot
Le DocumentRoot est un paramètre très important : il désigne le chemin absolu vers votre NPDS.
NPDS essaye de le définir automatiquement mais la méthode employée n'est pas très fiable. L'idéal est de le règler manuellement. Si vous ne le connaissez pas, créez un fichier test.php, à la racine de votre NPDS, et mettez-y ceci :
<?php echo dirname(realpath(__FILE__)); ?>
Ensuite accédez à ce fichier (http://votre-site/test.php) et il affichera le document-root à mettre dans upload.conf.php
Exemples
$DOCUMENTROOT = '/home/toto/public_html'; $DOCUMENTROOT = 'C:\Porgram Files\EasyPHP\www\NPDS'; $DOCUMENTROOT = '/var/www/npds';
Racine et URL_Upload
Il y a quelques problèmes avec la racine sous NPDS Sable… Laissez-la vide! URL_Upload et racine étant toujours utilisés ensemble, il y a donc le même problème.
Dans URL_Upload, mettez uniquement l'URL de votre site
Exemples
$racine = ''; $url_upload = 'http://votre-site/';
Paramètres supplémentaires
Max_Size
Taille maximale de chaque fichier uploadé, en octets
Exemple
$max_size = 1048576; //Taille maximale : 1Mo
Quota
Taille maximale de l'ensemble des fichiers stockés pour un utilisateur ou un post. Ceci permet de limiter la taille des minisites. En octets
Exemple
$quota = 3145728; //Quota : 3Mo
Autorise_upload_p
Créer un dossier pour chaque utilisateur, true ou false
Exemple
$autorise_upload_p = true; //Crée un dossier d'upload pour chaque utilisateur
Url_upload_css
Adresse la feuille de style utilisée pour la petite fenêtre d'upload (éditeur, minisite et forums)
Exemple
$url_upload_css = 'themes/Permanent-Double-Side/style/style.css'; //Utilise la feuille de style de Permanent-Double-Side
Extension_autorise
Ensemble des extensions des fichiers que les utilisateurs pourront uploader, séparées par un espace
Exemple
$extension_autorise="doc xls pps ppt sxw xls sxi sxd sxg stw rtf txt pdf zip rar tar tgz gif jpg jpeg png"; //Autorise toutes ces extensions
Ed_nb_images
Nombre d'images par ligne dans le navigateur de documents (éditeur), nombre entier et positif
Exemple
$ed_nb_images = 10; //Affiche 10 images par ligne
Width_max et Height_max
Taille maximale, en lageur et hauteur, des images affichées dans le navigateur de documents (éditeur), en pixels
Exemple
$width_max = 50; //Maximum 50 pixels de lageur $height_max = 50; //Maximum 50 pixels de hauteur
Ed_profil
Rassemble quatre paramètres pour les paramètres d'upload de l'éditeur. Chaque paramètre est représenté par un 1 lorsqu'il est activé ou un 0 lorsqu'il est désactivé
Dans l'ordre :
- Afficher les images contenues dans !divers
- Afficher les images contenues dans !mime
- Afficher les images contenues dans la racine
- Afficher les images contenues dans les documents personnels
Exemple
$ed_profil = '1011';
Rep_upload, Rep_cache et Rep_log
Rep_upload est le répertoire où sont stockés les fichiers divers
Rep_cache est le répertoire temporaire où transitent tous les fichiers uploadés
Rep_log est le fichier où sont enregistrés les évènements (logs)
Les deux premiers étant des répertoires, ils nécessitent un / final.
Exemple
$rep_upload = '/modules/upload/upload/'; $rep_cache = '/modules/upload/tmp/'; $rep_log = 'logs/security.log';
Encore des problèmes?
Si vous êtes sûr que votre upload.conf.php est bien configuré mais que vous n'arrivez toujours pas à uploader de fichiers sur votre site, le problème est probablement dû aux chmods.
Vérifiez ces différents répertoires :
- users_private, chmod 777
- modules/upload/upload/, chmod 766
- modules/upload/tmp/, chmod 766
- Liste non-exhaustive