Пример #1
0
function listage_dossier($dossier, $dossier_racine)
 {
	//on initialiste le compteur de fichier
	if(empty($GLOBALS['cpt_fichier'])) { $cpt_fichier='1'; }
	else { $cpt_fichier=$GLOBALS['cpt_fichier']; }

	//on initialiste le tableau de fichier
	if(empty($GLOBALS['tab_fichier'][0])) { $tab_fichier=''; }
	else { $tab_fichier=$GLOBALS['tab_fichier'][0]; }

	//on vérifie si c'est un dossier
	if(is_dir($dossier))
	{
		//on ouvre le dossier
		if($dh=opendir($dossier))
		{
			// on liste les fichiers et dossier
			while(($nom=readdir($dh))!=false)
			{
				// s'il sont différent de . et .. on continue le listage
			        if($nom!='.' and $nom!='..') {
				   $emplacement="$dossier/$nom";
				   // fonction récursive si c'est un dossier on appel à nouveau la fonction dans laquelle on se trouve actuellement
				   if(is_dir($emplacement)&&($nom!=".")&&($nom!=".."))
			 	   {
					listage_dossier("$dossier/$nom", $dossier_racine);
				   } else { 
						// si ce n'est pas un dossier alors un met l'emplacement du fichier et le fichier dans le tableau
						$tab_fichier_select=$dossier.'/'.$nom;
						//on enlève la partie non utils
						$GLOBALS['tab_fichier']['source_fichier'][$cpt_fichier] = $tab_fichier_select;
						//nom du fichier
						$GLOBALS['tab_fichier']['nom_fichier'][$cpt_fichier] = trim($nom);
						// source
						$source_emplacement= my_eregi_replace($dossier_racine,'',$tab_fichier_select);
						$source_emplacement= my_eregi_replace($nom,'',$source_emplacement);
						$GLOBALS['tab_fichier']['emplacement_fichier'][$cpt_fichier] = trim($source_emplacement);
						// destiné à
						$cpt_fichier++;
						$GLOBALS['cpt_fichier']=$cpt_fichier;
					  }
 				}
			}
		}
	}
 return ($GLOBALS['tab_fichier']);
 }
Пример #2
0
							//mise à jour ok on l'insère dans la base
						     // puisque que c'est une nouvelle version on efface les données de la base mise à jour
						     $requete='TRUNCATE TABLE '.$prefix_base.'miseajour';
						     $resultat = mysqli_query($GLOBALS["mysqli"], $requete) or die('Erreur SQL !'.$requete.'<br />'.((is_object($GLOBALS["mysqli"])) ? mysqli_error($GLOBALS["mysqli"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false)));
						     // puis on informe la base de la version actuelle de la mise à jour
						     $requete='INSERT INTO '.$prefix_base.'miseajour (fichier_miseajour, emplacement_miseajour, date_miseajour, heure_miseajour) values ("'.$beta_version[0].'","","'.date('Y-m-d').'","'.date('H:i:s').'")';
					             $resultat = mysqli_query($GLOBALS["mysqli"], $requete) or die('Erreur SQL !'.$requete.'<br />'.((is_object($GLOBALS["mysqli"])) ? mysqli_error($GLOBALS["mysqli"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false)));
						   }
				           	   if ($ext === ".tar.gz") {
						      $old = umask(0000);
						      @$archive = PclTarExtract($source, $destination, 'gepi');
						      unlink($source);
//debug
// echo $archive[5][status];
						      // on liste le dossier
						      $copie_fichier = listage_dossier($destination, $destination);
						      // on transfert via FTP
						      $transfert_fichier=envoi_ftp($copie_fichier, $dossier_ftp_gepi);
						      umask($old);
						      // on supprime le dossier msj_temp
						      $old = umask(0000);
						      $dossier_destination[0]=$destination;
						      supprimer_rep($dossier_destination);
						      // puis on le recret
						      mkdir($destination, 0777);
					              umask($old);

							//mise à jour ok on l'insère dans la base
						     // puisque que c'est une nouvelle version on efface les données de la base mise à jour
						     $requete='TRUNCATE TABLE '.$prefix_base.'miseajour';
						     $resultat = mysqli_query($GLOBALS["mysqli"], $requete) or die('Erreur SQL !'.$requete.'<br />'.((is_object($GLOBALS["mysqli"])) ? mysqli_error($GLOBALS["mysqli"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false)));