Fork me on GitHub






Module telechargements
Aspirant
Inscrit: 13/12/2004 19:20
Messages: 21
Bonjour à tous,
Je fait appel à vous car je cherche un module de telechargement un peu particulier.
J'ai pas mal cherché et je n'ai pas trouvé.

Habituellement, on upload un fichier via http puis il est inscrit dans la database puis stocké sur le serveur.

Je cherche un module capable de détecter des fichiers que j'aurai déposés par FTP sur le serveur. De cette manière, j'envoi 2000 fichiers par FTP et ils sont automatiquement disponible/mis en page via HTTP.
Je me fais comprendre ?

Vous connaissez un module qui fais ca ?

Bonne journée.

Posté le : 14/01/2008 10:23
Partager Twitter Partagez cette article sur GG+
Re: Module telechargements
Xoops accro
Inscrit: 04/02/2003 01:54
De Le Mans
Messages: 12273
Bonjour,

A ma connaissance les modules de téléchargement actuels ne disposent pas de cette fonctionnalité. Il serait surement possible d'en adapter un pour ce que tu souhaites, mais tu fournis peu d'explications sur la restitution de l'affichage que tu souhaites, hé oui 2000 fichiers ce n'est pas rien.

De toute façon, soit tes compétences te permettent d'adapter le module, soit tu fais appel à une équipe de spécialistes (voir ma signature)

A tout hasard, regarde si le module xplorer peut convenir.

Posté le : 14/01/2008 11:41
Partager Twitter Partagez cette article sur GG+
Re: Module telechargements
Aspirant
Inscrit: 13/12/2004 19:20
Messages: 21
merci pour la reponse.
J'ai cherché un peu et invision filemanager pour xoops semble faire ce que je demande.
Mais comme d'habitude avec les produits invision, l'integration est vraiment basique (il a sa propre base de user !).
Je continue de chercher :)

Posté le : 14/01/2008 12:20
Partager Twitter Partagez cette article sur GG+
Re: Module telechargements
Semi pro
Inscrit: 05/06/2004 14:25
Messages: 750
Bonjour,
Si tu connais un peux php et mysql, la création d'un script php basic n'est pas très compliquée : on trouve partout des exemples de scripts parcourant les fichiers d'un répertoire, il suffit après d'adapter pour générer une liste de requêtes mysql correspondant au module de téléchargements utilisé.

J'en avait fait un basique il y a quelques années, mais hélas après recherche dans mes archives je ne l'ai pas retrouvé.

Posté le : 14/01/2008 17:57
Partager Twitter Partagez cette article sur GG+
Re: Module telechargements
Semi pro
Inscrit: 01/11/2004 21:54
De Pres de Paris
Messages: 1099
J'ai retrouvé ça dans mes vieux fichiers, pour générer une liste des fichiers se trouvant dans un dossier:

<?
$the_array = Array();
$handle = opendir('articles/.');
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
$the_array[] = $file;
}
}
closedir($handle);
sort ($the_array);
reset ($the_array);
while (list ($key, $val) = each ($the_array)) {
echo "<a href=articles/$val target=detail>$val</a><br>";

}
?>

Remplace le mot articles par le nom du dossier où sont copiés tes fichiers, donne un nom à ton fichier avec une extension php (par exemple articles.php) et ça devrait marcher.

Posté le : 14/01/2008 19:13
Partager Twitter Partagez cette article sur GG+
Re: Module telechargements
Supporter Xoops
Inscrit: 09/01/2005 13:37
De Breizh
Messages: 16972
Bonjour,

Dans ce cas, j'ai celà moi :
<?
/************************************************************************/
/* listage.php: liste tous les répertoires/sous-répertoires et fichiers */
/* ==================================================================== */
/*                                                                      */
/* titiplusplus titiplusplus@titiplusplus.com                            */
/* titi_plusplus@hotmail.com                " title="http://ebc.titiplusplus.com titi_plusplus@hotmail.com                " rel="external">http://ebc.titiplusplus.com titi ... ;    */
/*                                                                      */
/* Mettez le script dans le répertoire à lister et executez le.            */
/* Pour un répertoire exclus du serveur web (doc root) executez-le        */
/* avec php.exe en ligne de commande :                                    */
/* ex : php.exe listage.php > listage.html puis ouvrez listage.html        */
/************************************************************************/
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> Listage des répertoires </TITLE>

</HEAD>
<BODY>
<?php

//classe "récursive" repertoire

$idclass=0;

class 
repertoire
{
    
//propriétés
    
var $id;//identifiant unique de la classe
    
var $chemin;//chemin du répertoire en cours
    
var $nom;//nom du répertoire en cours
    
var $listRep;//tableau des classes filles (ou sous classes)
    
var $listFiles;//tableau des noms + dates de modification des fichiers du répertoire en cours

    //constructeur
    
function repertoire($inChemin,$inNom)
    {
        global 
$idclass;

        
$this->id=$idclass;
        
        
$this->chemin=$inChemin;
        
$this->nom=$inNom;

        
$idclass++;//incrémentation pour la prochaine classe

        
if($inChemin!="")//déduction du chemin complet du repertoire
        
{
            
$fullpath=$inChemin."/".$inNom;
        }
        else
        {
            
$fullpath=$inNom;
        }

        
$handle=opendir($fullpath);

        
$tmp=0;//var d'increment -> tableau de sous classes
        
$tmp2=0;//var d'increment -> tableau de fichiers

        
while ($file readdir($handle))//création des sous classe
        
{
            if (
is_dir($fullpath."/".$file) && $file != "." && $file != "..")
            {
                
//instanciation d'une nouvelle classe depuis cette classe
                //j'appelle ça des classes récursives :-)
                //tant qu'il y aura des sous répertoires des sous classes seront créees ...
                //ex : pour rep1/rep2/rep3 => classe1->sousclasse2->sousclasse3 etc ...
                //les unes imbriquées dans les autres :-P et accessibles avec le tableau listRep
                
$this->listRep[$tmp]=new repertoire($fullpath,$file);
                
$tmp++;
            }
            else if(
is_file($fullpath."/".$file) && $file != "." && $file != "..")
            {
                
clearstatcache();//effacement du cache (conseillé dans la doc ... donc on le fait :-)
                //liste des fichiers + date modif
                
$this->listFiles[$tmp2]="<td>".$file."</td><td>".date("d/m/y H:i",fileatime($fullpath."/".$file))."</td>";
                
$tmp2++;
            }
        }

        
closedir($handle);
    }

    
//fonction d'affichage en html
    
function toString()//un peu comme le toString() en java
    
{
        echo
"<table border=1 border=0 cellspacing=0 cellpadding=0>
        <tr><td colspan=2 align=center><b><FONT SIZE=2 COLOR=red>"
.$this->nom."</FONT></b></td></tr>n";
        for(
$i=0;$i<count($this->listFiles);$i++)
        {
            echo
"<tr><FONT SIZE=2 >".$this->listFiles[$i]."</FONT></tr>n";
        }
        for(
$i=0;$i<count($this->listRep);$i++)
        {
            
//on appelle les toString() des classes filles
            
echo"<tr><td colspan=2></td></tr><tr>
                <td align=center valign=top><b><!-- <FONT SIZE=2 COLOR=red>"
.$this->nom."</FONT> --></b></td>
                <td>"
;
            
$this->listRep[$i]->toString();
            echo
"</td>";
            echo
"</tr>n";
        }
        echo
"</table>n";
    }
}

//DEBUT

$j=0;
$path='.';

$handle=opendir($path);
//listage des repertoires du répertoire où se trouve le script
while ($file readdir($handle))
{
    if (
is_dir($file) && $file != "." && $file != "..")
    {
        
$repertoire=new repertoire($path,$file);
        
$repertoire->toString();
    }
}

closedir($handle);

//FIN

//voilou ... simple et efficace à souhait :-P
?>
</BODY>
</HTML>


@++

Posté le : 14/01/2008 21:33

La connaissance s'accroît quand on la partage ...
Partager Twitter Partagez cette article sur GG+
Re: Module telechargements
Aspirant
Inscrit: 13/12/2004 19:20
Messages: 21
merci pour vos réponses, je vais essayer de m'inspirer de tout ca pour en arriver à mes fins.
;)

Posté le : 15/01/2008 21:20
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

18 Personne(s) en ligne (10 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 18 | Plus ...