en | fr  | Contact  | Print  | Share

FrameBeurk File

Fmbk/Module/Dnlod/RessourceVersion/Maj/creeRessourceVersion.php

<?php //FrameBeurk V0.65 Copyright ToolOscope 2016. Licence CeCILL-C.

if (! isset($_REQUEST["titre$IdMaj"]) || $_REQUEST["titre$IdMaj"] == '')
    
Beurk_messageEtape('Titre de la version obligatoire'true'RessourceVersion');
elseif (! isset(
$_REQUEST["donnees$IdMaj"]) || $_REQUEST["donnees$IdMaj"] == '')
    
Beurk_messageEtape('Contenu obligatoire'true'donneesRessource');
else {
    
//si fichier uploadé
    
if (! empty($_FILES["fichier$IdMaj"])) {
        if (
$_FILES["fichier$IdMaj"]['error'] != 0)
            
Beurk_messageEtape('Erreur upload fichier ' $_FILES["fichier$IdMaj"]['error'], true'fichierRessource');

        else {        
// upload sans erreur
            
$importRessource Beurk_Request2DB($_FILES["fichier$IdMaj"]['name']);
            
$typeMimeRessource Beurk_Request2DB($_FILES["fichier$IdMaj"]['type']);
            
// $_FILES["fichier$IdMaj"]['size']
            
            // type Mime du fichier non renvoyé par le browser : il doit être saisi par l'utilisateur
            
if ($typeMimeRessource == '') {
                if (isset(
$_REQUEST["typeMime$IdMaj"]) && $_REQUEST["typeMime$IdMaj"] != '')
                    
$typeMimeRessource Beurk_Request2DB($_REQUEST["typeMime$IdMaj"]);

                else 
Beurk_messageEtape('Type Mime indéterminé'true'typeMimeRessource');
            }
        }
    
    
// fichier déjà sur le serveur : seulement le nom et le type mime renvoyés (non obligatoire : Si absent, on ne pourra pas demander la ressource)
    
} else {
        
$importRessource = (isset($_REQUEST["import$IdMaj"])) ? Beurk_Request2DB($_REQUEST["import$IdMaj"]) : '';
        
$typeMimeRessource = (isset($_REQUEST["typeMime$IdMaj"])) ? Beurk_Request2DB($_REQUEST["typeMime$IdMaj"]) : '';
    }
    
    if (! 
$TRANSAC['Maj']['Erreur']) {                        // controle du nom de fichier
        
if (basename($importRessource) !== $importRessource)
            
Beurk_messageEtape('Nom de fichier invalide'true'Ressource');
    }    

    if (! 
$TRANSAC['Maj']['Erreur']) {
        
// Vérification version déjà existante pour cette ressource
        
$RessourceVersion Beurk_Request2DB($_REQUEST["titre$IdMaj"]);
        
$result1 db_QUERY("SELECT IdRessourceVersion FROM Dnlod_RessourceVersion WHERE IdRessource = '$IdRef' AND RessourceVersion = '$RessourceVersion'");
        if (list(
$IdRessourceVersion) = db_FETCH_ROW($result1))
            
Beurk_messageEtape('Nom de fichier invalide'true);
        else {
        
            
// déplacement du fichier temporaire
            
if (! empty($_FILES["fichier$IdMaj"]))
                if (! 
move_uploaded_file($_FILES["fichier$IdMaj"]['tmp_name'], INSTALL_PATH $CONFIG['Defaut']['Upload'] . $IdRef '/'$importRessource))
                    
Beurk_messageEtape('Erreur déplacement fichier'true'fichierRessource');
            
            if (! 
$TRANSAC['Maj']['Erreur']) {
            
                
// insertion de la nouvelle ressource
                
$requete = array('INSERT' => 'Dnlod_RessourceVersion',
                                
'VALUES' => array('RessourceVersion' => $RessourceVersion,
                                            
'IdRessource' => $IdRef,
                                            
'NbrDemandes' => 0,
                                            
'NbrTelecharges' => 0,
                                            
'Donnees' => Beurk_Request2DB($_REQUEST["donnees$IdMaj"]),
                                            
'Import' => $importRessource,
                                            
'TypeMime' => $typeMimeRessource
                                            
));

                
$IdRessourceVersion Beurk_creeEntite($requete'Version créée''V'$IdRef);    // Id, NoVersion et IdEtat sont ajoutés à la requête par la fonction
            
}
        }
    }
    
db_FREE($result1);
}


© 2010-2015 by ToolOscope SASU. © 2016-2018 by Arnaud De Rette. All rights reserved