Accueil > Forum > > > > demande de creation
demande de creation
jeudi 17 septembre 2009 à 10:25:33 |
demande de creation

poncherelo
|
bonjour
je recher un script ou une personne qui pourrait m'aider.
je recherche un script qui transfert un fichier depuis un server jeux vers un server web.
j'avais trouvé deja un script qui faisait tout cela , mais depuis une modification de mon hébergeur et il as falu passer ce script avec connexion ftp, mais le createur a laisser tomber le projet voila le sujet de ce post.
voici le script:
Code PHP :
<?php
// Nom du script : demolist.php
// Version : 0.6
// Date : 1/6/2009
// Auteur : Thierry Vanneste alias jenlain
// Email : jenlain@chti-team.fr
// Licence : GNU GPL http://www.gnu.org/licenses/gpl.txt
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------
// P A R A M E T R A G E
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------
$name="Source Tv Server War Chip's"; // le nom de votre serveur. Exemple celui qu'on trouve dans steam.
$path="/data/filer-2/dedigames/dedigamexxx/home/servers/serverxxx/games/halflife_source/cstrike/"; //le chemin vers le repertoire sur le serveur de jeu où sont stockées les démos, avec un / au debut et à la fin .( ex: /data/verygames/cpu-111/serverxxx/home/games/halflife_source/cstrike/)
$dest="/data/filer-6/web/webxxx/htdocs/hltv_demos/serverxxx/"; //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) (ex: /data/verygames/cpu-111/serverxxx/home/www/demos/)
$url="http://chipstv.verygames.net/hltv_demos/serverxxx/"; // l'url vers le répertoire où seront stockées les démos avec un / au bout. (http://yourteam.verygames.net/demos/)
$limit = "20"; // Nombre de demos affichées par pages
$zipfile = "0"; // Si 1 les fichiers transférés seront compressés. (Pré-requis : php5 avec zlib)
// Pour connaitre le chemin vers la racine de votre serveur, décommentez les deux lignes suivantes et relancez le fichier
$root = getenv("DOCUMENT_ROOT") ;
echo "<center>DOCUMENT_ROOT: " . $root . "</center>";
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------
// NE RIEN TOUCHER APRES CETTE LIGNE SI VOUS NE MAITRISEZ PAS LE CODE.
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<style type="text/css">
<!--
body,td,th {
font-family: Arial, Helvetica, sans-serif;
color: #FFFFFF;
background-color:#171717;
font-size: 12px;
}
a:link {
color: #FFFFFF;
text-decoration: underline;
}
a:visited {
text-decoration: underline;
color: #FFFFFF;
}
a:hover {
text-decoration: none;
color: #FFFFFF; }
a:active {
text-decoration: underline;
color: #FFFFFF; }
.page_numbers {
display:table;
padding:0;
margin:0 auto;
font-family: arial, helvetica, sans-serif;
white-space:nowrap;
list-style-type:none;
}
* html .page_numbers {
display:inline-block;
width:1px;
padding:0 2px;
}
.page_numbers li {
display:table-cell;
}
* html .page_numbers li {
display:inline;
}
.page_numbers a {
display:block;
padding:0.2em 1em;
background:#171717;
color:#ffffff;
text-decoration:none;
border:1px solid #171717;
}
* html .page_numbers a {
display:inline-block;
margin:0 -2px;
}
.page_numbers a:hover {
color:#ffffff;
background:#000000;
}
a.current {
color:#ffffff;
background:#000000;
cursor:default;
}
-->
</style>
<!--[if IE]>
<style type="text/css">
.page_numbers a { display:inline-block; }
.page_numbers ul li {display:inline; }
</style>
<![endif]-->
</head>
<body>
<?php
ini_set('max_execution_time', 0);
if ((empty($path)) | empty($dest)) {
die("<center>Veuillez definir les repertoires dans la zone paramétrage<br>Editez le fichier.</center>");
}
$webpage = basename($_SERVER['PHP_SELF']);
global $webpage;
$page = $_GET['page'];
?>
<div style="text-align: center;">
<p style="font-size: medium; font-weight: bold;"><?php echo $name; ?></p>
<FORM method="POST" action="<?php echo $PHP_SELF; ?>">
<input type="submit" name="action" value="refresh" />
</FORM>
</div>
<?php
if(isset($_POST["action"])) {
$action = $_POST["action"];
switch($action) {
case "refresh";
movefiles($path,$dest);
printfiles($dest,$url);
break;
}
}
else {
printfiles($dest,$url);
}
?>
<?php
function movefiles($path,$dest) {
global $zipfile;
$dir = @opendir($path);
echo "<div align=\"center\"> \n";
echo "Analyse du repertoire sur le serveur de jeu... Veuillez patienter... \n" ;
$i="0";
while ($file = readdir($dir)) {
$ext = pathinfo($path.$file, PATHINFO_EXTENSION);
if ($ext == 'dem') {
rename($path.$file, $dest.$file);
if ($zipfile == "1") {
zipfiles($dest,$file);
unlink($dest.$file);
echo "<center>Fichier: " . $file . " ajouté<br></center>\n";
}
$i++;
}
}
closedir($dir);
if ($i == "0") {
echo "Aucun nouveau fichier à transférer... \n";
} else {
echo " " . $i . " nouveau(x) fichier(s) transféré(s). \n";
}
echo "Traitement terminé. </div> \n";
echo "</div> \n";
}
function zipfiles($dest,$file) {
$zip = new ZipArchive();
$filename = "./$file.zip";
if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) {
exit("Impossible d'ouvrir <$filename>\n");
}
$zip->addFile($thisdir.$file);
$zip->close();
}
function printfiles($dest_dir,$url) {
global $limit, $webpage, $page;
$dir = @opendir($dest_dir);
while ($file = readdir($dir)) {
$ext = pathinfo($dest.$file, PATHINFO_EXTENSION);
// placement des fichiers .dem dans un tableau pour pouvoir les trier
if ($ext == 'dem' || $ext == 'zip') {
$ListFiles[$i]=$file;
$i++;
}
}
closedir($dir);
echo "<div align=\"center\"> \n";
// tri par ordre decroissant - fonction rsort
if(count($ListFiles)!=0) {
rsort($ListFiles);
}
else {
die("Il n'y a actuellement pas de fichier dans le repertoire de destination. \n");
}
// affiche les fichiers par ordre alphabetique decroissant dans des tables
$total_pages = floor(count($ListFiles)/$limit) +1 ;
$pagination = pagination($total_pages,$page);
if ($page == "") {
$page = 1;
}
$i = (($page - 1) * $limit) ;
echo "Nombre total de fichiers : " . count($ListFiles) . " \n";
//echo "limit = " . $limit . ", page = " . $page . ", i = " . $i . " <br> \n";
echo "<table width=\"90%\"> \n" ;
echo "<tr><td width=\"80%\"><b> Filename <b></td><td width=\"20%\" align=\"center\"><b> Filesize(Mb) <b></td></tr> \n" ;
if ( count($ListFiles) > $limit ) {
while ( $i < ($page * $limit) && $i < count($ListFiles)) {
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";
$i++;
}
}
if ( count($ListFiles) <= $limit ) {
while ( $i < count($ListFiles) ) {
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";
$i++;
}
}
echo "</table> \n";
echo "<div align=\"center\">" . $pagination . "</div> \n";
echo "<a href=\"http://chips.verygames.net\" target=\"_blank\">Source Tv Chip's² </a>\n";
echo "</div> \n";
}
function pagination($total_pages,$page){
//pagination_six
global $webpage;
$pagination = '<div class="page_numbers">
<ul>';
if($total_pages!=1){
//the total links visible
$max_links=10;
//$max links_marker is the top of the loop
//$h is the start
$max_links_marker = $max_links+1;
$h=1;
//$link_block is the block of links on the page
//When this is an integer we need a new block of links
$link_block=(($page-1)/$max_links);
//if the page is greater than the top of th loop and link block
//is an integer
if(($page>=$max_links_marker)&&(is_int($link_block))){
//reset the top of the loop to a new link block
$max_links_marker=$page+$max_links;
//and set the bottom of the loop
$h=$max_links_marker-$max_links;
$prev=$h-1;
}
//if not an integer we are still within a link block
elseif(($page>=$max_links_marker)&&(!is_int($link_block))){
//round up the link block
$round_up=ceil($link_block);
$new_top_link = $round_up*$max_links;
//and set the top of the loop to the top link
$max_links_marker=$new_top_link+1;
//and the bottom of the loop to the top - max links
$h=$max_links_marker-$max_links;
$prev=$h-1;
}
//if greater than total pages then set the top of the loop to
// total_pages
if($max_links_marker>$total_pages){
$max_links_marker=$total_pages+1;
}
//first and prev buttons
if($page>'1'){
$pagination.='<li class="current"><a href="'.$webpage.'?page=1">First</a></li>
<li class="current"><a href="'.$webpage.'?page='.($page-1).'">Prev</a></li>';
}
//provide a link to the previous block of links
$prev_start = $h-$max_links;
$prev_end = $h-1;
if($prev_start <=1){
$prev_start=1;
}
$prev_block = "Pages $prev_start to $prev_end";
if($page>$max_links){
$pagination.='<li class="current"><a href="'.$webpage.'?page='.$prev.'">'.$prev_block.'</a></li>';
}
//loop through the results
for ($i=$h;$i<$max_links_marker;$i++){
if($i==$page){
$pagination.= '<li><a class="current">'.$i.'</a></li>';
}
else{
$pagination.= '<li><a href="'.$webpage.'?page='.$i.'">'.$i.'</a></li>';
}
}
//provide a link to the next block o links
$next_start = $max_links_marker;
$next_end = $max_links_marker+$max_links;
if($next_end >=$total_pages){
$next_end=$total_pages;
}
$next_block = "Pages $next_start to $next_end";
if($total_pages>$max_links_marker-1){
$pagination.='<li class="current"><a href="'.$webpage.'?page='.$max_links_marker.'">'.$next_block.'</a></li>';
}
//link to next and last pages
if(($page >="1")&&($page!=$total_pages)){
$pagination.='<li class="current"><a href="'.$webpage.'?page='.($page+1).'">Next</a></li>
<li class="current"><a href="'.$webpage.'?page='.$total_pages.'">Last</a></li>';
}
}
//if one page of results
else{
$pagination.='<li><a href="" class="current">1</a></li>';
}
$pagination.='</ul>
</div>';
return($pagination);
}
?>
comme j'y connais rien , le createur m'as dis qu'il faut changer le systeme de connexion par une connexion Ftp
je suis tomber sur ce forum pour demander de l'aide et si il y aurais une ame charitable pour le modifier ou tout au moin m'expliquer
merci d'avance
|
|
Cette discussion est classée dans : page, max, block, links, if
Répondre à ce message
Sujets en rapport avec ce message
ou mettre ma boucle pour afficher [ par niko14 ]
hello tout le monde!J'ai un probleme j'ai repris ce code la ici je trouve tres bien mais le probleme c'est que je ne sais pas ou placer mon while pour
if qui ne fonctionne pas correctement [ par winnie39 ]
Bonjour à tous,Voila je dois créer un site pour un stage, mais j' ai un problème de condition.Voila la page se compose d' une image et d' un texte, ma
ADODB_PAGER [ par daris ]
Bonjour!J'utilise la class adodb_pager de adodb .Suite à une requete , j'arrive à afficher mon tableau avec la pagination.tout marche .Problème! J'a
convertir gif animé en image fixe avec transparence [ par Bestdoud ]
Bonjour,J'ai un script qui me permet d'uploader des image gifs animés sur mon site.J'aurais besoin qu'en même temps qu'il créé l'image dans le dossier
probleme de redirection avec fct header() [ par djadito ]
j'ai crié une page d'authentification en html, et pour verifié les champs saisieds le formulaire avec celle de ma base, j'ai utilise une page verifica
Damier 4*4 php [ par C0rt1ch ]
Salut,J'ai un probleme dans la création d'un Damier de 4*4 en php.Je voudrais remplir un tableau, avec le nom des images afin de les garder en mémoire
Page dynamique avec ?page=xxx [ par thedeejay ]
Salutatous! je suis désolé de poster une question(je pense) aussi bete; maisje bugge... Voila: je suis en train de creer un site avec séléction de
affichage page par page [ par slashf ]
bonjour a tous, voilà mon petit souci j'ai cherché sur google mais rien :( du coup j'ai pas eu le choix que de poster ce message, se que je cherche a
validation w3c [ par ratbone ]
Bonjour tout le monde, je suis graphiste et j'ai un p'tit souci avec un code php de pagination pour un site que je fais pour un client. Vous pourrez v
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|