Votre question

Aide deplacement de fichier

Tags :
  • Serveur
  • Programmation
Dernière réponse : dans Programmation
18 Avril 2011 06:25:27

Bonjour, j'ai un serveur dédié avec dessus une partit réserver a un site pour ma team Css et l'autre un serveur pour ce même jeux, mon problème est que dans la partit ou il y a le serveur Css, j'ai besoin de mettre a disposition des fichiers créer lors de war (source tv si vous connaissez) sur notre site web a la disposition de tout le monde, le problème est que je n'arrive pas a les déplacer via du php, ils ne se transfèrent pas du répertoire où ils ont étaient créer vers un répertoire du serveur web, j'ai trouvai un script exactement ce qu'il me fallait mais cela ne marche pas

merci de m'avoir lu

Autres pages sur : aide deplacement fichier

18 Avril 2011 08:29:49

Post nous le script qu'on puisse au moins voir ou ca pourrait ne pas marcher dans ton cas
m
0
l
18 Avril 2011 16:10:13

  1. <?php
  2. // Nom du script : demolist_ftp.php
  3. // Version : 0.6
  4. // Date : 27/9/2009
  5. // Auteur : Thierry Vanneste alias jenlain
  6. // Email : jenlain@chti-team.fr
  7. // Licence : GNU GPL <a href="http://www.gnu.org/licenses/gpl.txt" rel="nofollow" target="_blank">http://www.gnu.org/licenses/gpl.txt</a>
  8. //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  9. // P A R A M E T R A G E
  10. //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  11. $name = "FR -=[CHti]=- Team NORD-PAS-DE-CALAIS - Tick 100"; // le nom de votre serveur. Exemple celui qu'on trouve dans steam.
  12. $ftp_server = "ftp.verygames.net"; // l'adresse ftp du serveur de jeu. Par exemple ftp.verygames.net
  13. $ftp_user_name = "server421"; // le username ftp par exemple server0000
  14. $ftp_user_pass = "********"; // le password ftp par exemple ********
  15. $ftp_dir = "/games/halflife_source/cstrike/cfg/cssmatch/sourcetv/"; //le chemin vers le repertoire ftp sur le serveur de jeu où sont stockées les démos, avec un / au debut et à la fin, en general (/games/half-life/cstrike/).
  16. $dest_dir = "/data/filer-6/web/web427/htdocs/demolist/"; //le chemin vers le repertoire sur le serveur web où seront stockées les démos evc un / au debut et à la fin. Le repertoire doit être inscriptible (chmod 777)
  17. $url = "<a href="http://chti-team.verygames.net/demolist/" rel="nofollow" target="_blank">http://chti-team.verygames.net/demolist/</a>"; // l'url vers le répertoire où seront stockées les démos avec un / au bout.
  18. $del = "1"; // Si 1 supprime les fichiers sur le serveur ftp qui sont deja presents sur votre site web
  19. $limit = "20"; // Nombre de demos affichées par pages
  20. $zipfile = "1"; // Si 1 les fichiers transférés seront compressés. (Pré-requis : php5 avec zlib)
  21. // Pour connaitre le chemin vers la racine de votre serveur web, décommentez les deux lignes suivantes et relancez le fichier
  22. //$root = getenv("DOCUMENT_ROOT") ;
  23. //echo "<center>DOCUMENT_ROOT: " . $root . "</center>";
  24. // Pour connaitre le repertoire ftp où sont affichées les démos, utilisez votre logiciel ftp, filezilla ou autre.
  25. //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  26. // NE RIEN TOUCHER APRES CETTE LIGNE SI VOUS NE MAITRISEZ PAS LE CODE.
  27. //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  28. ?>
  29. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" rel="nofollow" target="_blank">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</a>">
  30. <html xmlns="<a href="http://www.w3.org/1999/xhtml" rel="nofollow" target="_blank">http://www.w3.org/1999/xhtml</a>" xml:lang="en" lang="en">
  31. <head>
  32. <style type="text/css">
  33. <!--
  34. body,td,th {
  35. font-family: Arial, Helvetica, sans-serif;
  36. color: #FFFFFF;
  37. background-color:#171717;
  38. font-size: 12px;
  39. }
  40. a:link {
  41. color: #FFFFFF;
  42. text-decoration: underline;
  43. }
  44. a:visited {
  45. text-decoration: underline;
  46. color: #FFFFFF;
  47. }
  48. a:hover {
  49. text-decoration: none;
  50. color: #FFFFFF; }
  51. a:active {
  52. text-decoration: underline;
  53. color: #FFFFFF; }
  54. .page_numbers {
  55. display:table;
  56. padding:0;
  57. margin:0 auto;
  58. font-family: arial, helvetica, sans-serif;
  59. white-space:nowrap;
  60. list-style-type:none;
  61. }
  62. * html .page_numbers {
  63. display:inline-block;
  64. width:1px;
  65. padding:0 2px;
  66. }
  67. .page_numbers li {
  68. display:table-cell;
  69. }
  70. * html .page_numbers li {
  71. display:inline;
  72. }
  73. .page_numbers a {
  74. display:block;
  75. padding:0.2em 1em;
  76. background:#171717;
  77. color:#ffffff;
  78. text-decoration:none;
  79. border:1px solid #171717;
  80. }
  81. * html .page_numbers a {
  82. display:inline-block;
  83. margin:0 -2px;
  84. }
  85. .page_numbers a:hover {
  86. color:#ffffff;
  87. background:#000000;
  88. }
  89. a.current {
  90. color:#ffffff;
  91. background:#000000;
  92. cursor:default;
  93. }
  94. -->
  95. </style>
  96. <!--[if IE]>
  97. <style type="text/css">
  98. .page_numbers a { display:inline-block; }
  99. .page_numbers ul li {display:inline; }
  100. </style>
  101. <![endif]-->
  102. </head>
  103. <body>
  104.  
  105. <?php
  106. if ( empty($ftp_dir) | empty($dest_dir)) {
  107. die("<center>Désolé votre parametrage n'est pas correct<br>Veuillez éditer le fichier.</center> \n");
  108. }
  109. $webpage = basename($_SERVER['PHP_SELF']);
  110. global $webpage;
  111. $page = $_GET['page'];
  112. ?>
  113.  
  114. <div style="text-align: center;">
  115. <p style="font-size: medium; font-weight: bold;"><?php echo $name; ?></p>
  116. <FORM method="POST" action="<?php echo $PHP_SELF; ?>">
  117. <input type="submit" name="action" value="refresh" />
  118. </FORM>
  119. </div>
  120.  
  121. <?php
  122. if(isset($_POST["action"])) {
  123. $action = $_POST["action"];
  124.  
  125. switch($action) {
  126. case "refresh";
  127. getfiles($dest_dir, $ftp_dir);
  128. printfiles($dest_dir,$url);
  129. break;
  130. }
  131. }
  132. else {
  133. printfiles($dest_dir,$url);
  134. }
  135. ?>
  136.  
  137. </body>
  138. </html>
  139.  
  140. <?php
  141.  
  142. function getfiles($dest_dir, $ftp_dir) {
  143. global $ftp_server , $ftp_user_name , $ftp_user_pass , $ftp_root, $del, $delage, $zipfile;
  144. // Création de la connexion
  145. $conn_id = ftp_connect($ftp_server);
  146. // Authentification avec nom de compte et mot de passe
  147. $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
  148. // Vérification de la connexion
  149. echo "<div align=\"center\"> \n";
  150. if ((!$conn_id) || (!$login_result)) {
  151. die ("Connexion ftp " . $ftp_server . " non possible ! \n");
  152. } else {
  153. echo "Connexion ftp ok!... ";
  154. $dir = $ftp_dir;
  155. //echo "<center>ftp dir : " . $dir . " </center> \n";
  156. $contents = ftp_nlist($conn_id, $dir);
  157. echo "Analyse du repertoire ftp... Veuillez patienter... \n" ;
  158. foreach($contents as $file){
  159. $lenght = strlen($ftp_dir);
  160. $get_file = substr($file, $lenght);
  161. $ext = pathinfo($file, PATHINFO_EXTENSION);
  162. // Téléchargement des fichiers dont l'extension est .dem depuis le repertoire $ftp_dir
  163. if ($ext == 'dem') {
  164. if (!file_exists($dest_dir.$get_file)) {
  165. echo "<center> File get : " . $file . " </center> \n" ;
  166. $buff = ftp_mdtm($conn_id, $file);
  167. $today = MkTime(Date("h,i,s,m,d,Y"));
  168. $days = number_format((($today - $buff)/86400), 1);
  169. //echo "Fichier en téléchargement : " . $get_file . " " . date("d.m.Y H:i", $buff) . ", Match effectué il y a : " . $days . " jr(s) <br> \n" ;
  170. ftp_get($conn_id, $dest_dir.$get_file, $dir.$get_file,FTP_BINARY);
  171. if ($zipfile == "1") {
  172. echo "<center>File zip :" . $dest_dir.$get_file . "\n";
  173. $zip = new ZipArchive();
  174. $filename = "./$get_file.zip";
  175. if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) {
  176. exit("Impossible d'ouvrir <$filename>\n");
  177. }
  178. $zip->addFile($dest_dir.$get_file);
  179. $zip->close();
  180. chmod($dest_dir.$get_file . ".zip", 0755);
  181. unlink($dest_dir.$get_file);
  182. echo "Zip done \n<br>";
  183. }
  184. $i = $i + 1;
  185. //effacement si option choisie dans le parametrage
  186. if ( $del == "1" ) {
  187. if (ftp_delete($conn_id, $file)) {
  188. echo "File delete: " . $file. " done<br> \n";
  189. }
  190. }
  191. }
  192. }
  193. }
  194. if ($i == "") {
  195. echo "Aucun nouveau fichier à télécharger. \n";
  196. } else {
  197. echo " " . $i . " nouveau(x) fichier(s) téléchargés(s). \n";
  198. }
  199. ftp_quit($conn_id); //deconnexion du ftp
  200. echo "Traitement terminé. </div> \n";
  201. }
  202. }
  203.  
  204. function printfiles($dest_dir,$url) {
  205. global $limit, $webpage, $page;
  206. $dir = @opendir($dest_dir);
  207. while ($file = readdir($dir)) {
  208. $ext = pathinfo($dest.$file, PATHINFO_EXTENSION);
  209. // placement des fichiers .dem dans un tableau pour pouvoir les trier
  210. if ($ext == 'dem' || $ext == 'zip') {
  211. $ListFiles[$i]=$file;
  212. $i++;
  213. }
  214. }
  215. closedir($dir);
  216. echo "<div align=\"center\"> \n";
  217. // tri par ordre decroissant - fonction rsort
  218. if(count($ListFiles)!=0) {
  219. rsort($ListFiles);
  220. }
  221. else {
  222. die("Il n'y a actuellement pas de fichier dans le repertoire de destination. \n");
  223. }
  224. // affiche les fichiers par ordre alphabetique decroissant dans des tables
  225. $total_pages = floor(count($ListFiles)/$limit) +1 ;
  226. $pagination = pagination($total_pages,$page);
  227. if ($page == "") {
  228. $page = 1;
  229. }
  230. $i = (($page - 1) * $limit) ;
  231. echo "Nombre total de fichiers : " . count($ListFiles) . " \n";
  232. //echo "limit = " . $limit . ", page = " . $page . ", i = " . $i . " <br> \n";
  233. echo "<table width=\"90%\"> \n" ;
  234. echo "<tr><td width=\"80%\"><b> Filename <b></td><td width=\"20%\" align=\"center\"><b> Filesize(Mb) <b></td></tr> \n" ;
  235. if ( count($ListFiles) > $limit ) {
  236. while ( $i < ($page * $limit) && $i < count($ListFiles)) {
  237. echo '<tr><td width="80%"><a href="' . $url.$ListFiles[$i] . '">' . $ListFiles[$i]. '</a></td><td width="20%" align="center" >' . number_format(filesize($dest_dir.$ListFiles[$i])/1000000, 1) . '</div></td></tr>',"\n";
  238. $i++;
  239. }
  240. }
  241. if ( count($ListFiles) <= $limit ) {
  242. while ( $i < count($ListFiles) ) {
  243. echo '<tr><td width="80%"><a href="' . $url.$ListFiles[$i] . '">' . $ListFiles[$i]. '</a></td><td width="20%" align="center" >' . number_format(filesize($dest_dir.$ListFiles[$i])/1000000, 1) . '</div></td></tr>',"\n";
  244. $i++;
  245. }
  246. }
  247. echo "</table> \n";
  248. echo "<div align=\"center\">" . $pagination . "</div> \n";
  249. echo "Free script from Jenlain - <a href=\"<a href="http://www.chti-team.fr" rel="nofollow" target="_blank">http://www.chti-team.fr</a>\" target=\"_blank\"><a href="http://www.chti-team.fr&lt" rel="nofollow" target="_blank">www.chti-team.fr&lt</a>;/a>\n";
  250. echo "</div> \n";
  251. }
  252.  
  253. function pagination($total_pages,$page){
  254. //pagination_six
  255. global $webpage;
  256. $pagination = '<div class="page_numbers">
  257. <ul>';
  258. if($total_pages!=1){
  259. //the total links visible
  260. $max_links=10;
  261. //$max links_marker is the top of the loop
  262. //$h is the start
  263. $max_links_marker = $max_links+1;
  264. $h=1;
  265. //$link_block is the block of links on the page
  266. //When this is an integer we need a new block of links
  267. $link_block=(($page-1)/$max_links);
  268. //if the page is greater than the top of th loop and link block
  269. //is an integer
  270. if(($page>=$max_links_marker)&&(is_int($link_block))){
  271. //reset the top of the loop to a new link block
  272. $max_links_marker=$page+$max_links;
  273. //and set the bottom of the loop
  274. $h=$max_links_marker-$max_links;
  275. $prev=$h-1;
  276. }
  277. //if not an integer we are still within a link block
  278. elseif(($page>=$max_links_marker)&&(!is_int($link_block))){
  279. //round up the link block
  280. $round_up=ceil($link_block);
  281. $new_top_link = $round_up*$max_links;
  282. //and set the top of the loop to the top link
  283. $max_links_marker=$new_top_link+1;
  284. //and the bottom of the loop to the top - max links
  285. $h=$max_links_marker-$max_links;
  286. $prev=$h-1;
  287. }
  288. //if greater than total pages then set the top of the loop to
  289. // total_pages
  290. if($max_links_marker>$total_pages){
  291. $max_links_marker=$total_pages+1;
  292. }
  293. //first and prev buttons
  294. if($page>'1'){
  295. $pagination.='<li class="current"><a href="'.$webpage.'?page=1">First</a></li>
  296. <li class="current"><a href="'.$webpage.'?page='.($page-1).'">Prev</a></li>';
  297. }
  298. //provide a link to the previous block of links
  299. $prev_start = $h-$max_links;
  300. $prev_end = $h-1;
  301. if($prev_start <=1){
  302. $prev_start=1;
  303. }
  304. $prev_block = "Pages $prev_start to $prev_end";
  305. if($page>$max_links){
  306. $pagination.='<li class="current"><a href="'.$webpage.'?page='.$prev.'">'.$prev_block.'</a></li>';
  307. }
  308. //loop through the results
  309. for ($i=$h;$i<$max_links_marker;$i++){
  310. if($i==$page){
  311. $pagination.= '<li><a class="current">'.$i.'</a></li>';
  312. }
  313. else{
  314. $pagination.= '<li><a href="'.$webpage.'?page='.$i.'">'.$i.'</a></li>';
  315. }
  316. }
  317. //provide a link to the next block o links
  318. $next_start = $max_links_marker;
  319. $next_end = $max_links_marker+$max_links;
  320. if($next_end >=$total_pages){
  321. $next_end=$total_pages;
  322. }
  323. $next_block = "Pages $next_start to $next_end";
  324. if($total_pages>$max_links_marker-1){
  325. $pagination.='<li class="current"><a href="'.$webpage.'?page='.$max_links_marker.'">'.$next_block.'</a></li>';
  326. }
  327. //link to next and last pages
  328. if(($page >="1")&&($page!=$total_pages)){
  329. $pagination.='<li class="current"><a href="'.$webpage.'?page='.($page+1).'">Next</a></li>
  330. <li class="current"><a href="'.$webpage.'?page='.$total_pages.'">Last</a></li>';
  331. }
  332. }
  333. //if one page of results
  334. else{
  335. $pagination.='<li><a href="" class="current">1</a></li>';
  336. }
  337. $pagination.='</ul>
  338. </div>';
  339. return($pagination);
  340. }
  341.  
  342.  
  343. ?>
m
0
l
Contenus similaires
24 Juin 2011 20:03:01

J'ai encore besoin d'aide ^^"
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS