Bonjour. Dans cet explorateur, comment rajouter un lien de t¨¦l¨¦chargement de fichier comme sur
www.takeoff.fr page download.
Voici le script:
Et voici la page ou j'essaye de l'utiliser
www.abribulles.com/client/jfile_browser.php3 (login: visiteur mot de passe: azerty1)
Merci ¨¤ tous pour votre aide
<?php
////////////////////////////////////////////////////////////////////////////////
// JFileBrowser par JPinchaud - j_pinchaud@yahoo.fr
// Un browser de dossier comme l'explorateur de windows.
// Bon ok, pas tout §Ñ fait pareil mais pas loin quand m§Üme.
// Comme d'hab, rien §Ñ faire, suaf placer les dossiers que vous voulez explorer dans le dossier downloads (ou un autre mais pensez §Ñ changer
// le nom de la variable $main_dir).
//
//
// NOTE : la fonction is_dir() ne marche pas chez moi, les dossiers sont donc consid§Ûr§Ûs comme des noms de fichiers sans extension.
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// INITIALISATION
$main_dir
= "downloads/"
;
// Dossier principal
$page_title
=
"JFileBrowser par jpinchaud@free.fr"
;
// Titre de la page en haut
$page_title_p
= "Dossiers du JFileBrowser par jpinchaud@free.fr"
;
// Titre de la page sur la page
$page_bg_color
=
"#EAEAFF"
;
// couleur fond de page
$txt_color
= "#1E2154"
;
// couleur texte
$link_color
=
"#000080"
;
// couleur lien
$vlink_color
= "#9999FF"
;
// couleur lien visit§Û
$alink_color
=
"#CC0000"
;
// couleur lien actif
$slink_color
= "#006699"
;
// couleur lien s§Ûlectionn§Û
// FIN INITIALISATION
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// dossier = fichier sans point
function
p_is_file
(
$file_name
){
$pt
=
strrpos
(
$file_name
, "."
);
if
(
$pt
= =
FALSE )
$is_file
=
FALSE ;
else
$is_file
=
TRUE ;
return (
$is_file
);
}
// FIN dossier = fichier sans point
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// last ou milieu $i est-il le dernier
function p_is_last
(
$i
,
$j
){
$j
--;
if
(
$i
<= $j
)
$is_last
=
FALSE ;
else
$is_last
=
TRUE ;
return (
$is_last
);
}
// FIN last ou milieu
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// level
function p_level
(
$file_name
,
$level
){
$i
=
1;
while
(
$i
<= $level
){
$file_name
= ""
.
$file_name
;
$i
++;
}
return (
$file_name
);
}
// FIN level
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// type fichier
function get_type
(
$file
){
$pt
= strrpos
(
$file
,
"."
);
if
(
$pt
! =
FALSE ){
$file_ext
= substr
(
$file
,
$pt
+
1,
strlen
(
$file
)
-
$pt
-
1);
switch
(
$file_ext
){
case "gif"
:
$image
=
"_icon/i_gif.gif"
;
break ;
case "htm"
:
$image
= "_icon/i_htm.gif"
;
break ;
case "html"
:
$image
=
"_icon/i_htm.gif"
;
break ;
case "bmp"
:
$image
= "_icon/i_img.gif"
;
break ;
case "jpg"
:
$image
=
"_icon/i_jpg.gif"
;
break ;
case "mp3"
:
$image
= "_icon/i_mp3.gif"
;
break ;
case "exe"
:
$image
=
"_icon/i_pgm.gif"
;
break ;
case "txt"
:
$image
= "_icon/i_txt.gif"
;
break ;
case "wav"
:
$image
=
"_icon/i_wav.gif"
;
break ;
case "zip"
:
$image
= "_icon/i_zip.gif"
;
break ;
default :
$image
=
"_icon/i_other.gif"
;
break ;
}
$img_size
= GetImageSize
(
$image
);
$img_size_wh
=
$img_size
[3];
$image
= ""
;
return (
$image
);
}
}
// FIN type fichier
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// nb dir and file
function get_nb_all
(
$directory
){
$handle
=
opendir
(
$directory
);
$nb_all
=
0;
while
(
$file
=
readdir
(
$handle
)){
if
(
$file
!= "."
&& $file
! =
".."
)
{
$nb_all
++;
}
}
closedir
(
$handle
);
return (
$nb_all
);
}
// FIN nb dir and file
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// nb file
function get_nb_file
(
$directory
){
$handle
= opendir
(
$directory
);
$nb_file
=
0;
while
(
$file
= readdir
(
$handle
)){
if
(
$file
! = "."
&&
$file
! =
".."
)
{
if
(
p_is_file
(
$file
))
$nb_file
++;
}
}
closedir
(
$handle
);
return (
$nb_file
);
}
// FIN nb file
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// get dir
function p_get_dir
(
$directory
,
$level
,
$dir_no
){
// $directory = str_replace (" ", "%20", $directory);
$arr_dir
= explode
( "/"
,
$directory
);
$nb_dir
=
get_nb_all
(
$directory
);
$i
=
0;
$handle
=
opendir
(
$directory
);
while
(
$file
= readdir
(
$handle
))
{
if
(
$file
! = "."
&&
$file
! =
".."
){
if
(!
p_is_file
(
$file
)){
$i
++;
$file_name
=
$file
;
$new_dir
= $directory
.
$file_name
. "/"
;
if
(
p_is_last
(
$i
,
$nb_dir
))
if
(
$file_name
== $dir_no
)
$image
= ""
;
else
$image
=
""
;
else
if
(
$file_name
= = $dir_no
)
$image
= ""
;
else
$image
=
""
;
$image
=
p_level
(
$image
,
$level
);
$line_dir
[
$level
].= "
<tr align="left" valign="middle">
<td valign="middle" colspan="3"> $new_dir ">
$image $file_name
</td>
</tr>
";
}
}
if
(
$file
== $dir_no
){
$line_dir
[
$level
]. = "x?x?x"
.
$level
.
"x?x?x"
;
}
}
closedir
(
$handle
);
return (
$line_dir
);
}
// FIN get dir
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// get file
function p_get_file
(
$directory
,
$level
){
// $directory = str_replace (" ", "%20", $directory);
$nb_file
=
get_nb_file
(
$directory
);
$i
=
0;
$handle
=
opendir
(
$directory
);
while
(
$file
= readdir
(
$handle
))
{
if
(
$file
! = "."
&&
$file
! =
".."
)
{
// Que des fichiers
if
(
p_is_file
(
$file
)){
$i
++;
$file_name
=
$file
;
$file_path
= $directory
.
$file
;
$file_size
=
filesize
(
$file_path
);
$file_size
= $file_size
/
1000;
$file_size
=
$file_size
. " Ko"
;
if
(
p_is_last
(
$i
,
$nb_file
))
$image_l
=
"_icon/b_vert_last_file.gif"
;
else
$image_l
= "_icon/b_vert_file.gif"
;
$image
= get_type
(
$file_name
);
$b_vert
= ""
;
$b_vert
= p_level
(
$b_vert
,
$level
);
$line_file
[
$level
]. = "
<tr align= "left" valign="middle">
<td valign="middle" colspan="2"> $b_vert
$image $file_name
</td>
<td width ="100" align= "left"> $file_size </td>
</tr>
";
}
}
}
closedir
(
$handle
);
return (
$line_file
);
}
// FIN get file
////////////////////////////////////////////////////////////////////////////////
if
(
$directory
== ""
)
$directory
=
$main_dir
;
// barre navig
$arr_nav_dir
= explode
( "/"
,
$directory
);
$taille
=
sizeof
(
$arr_nav_dir
)-2;
for
(
$i
= 0
; $i
< =
$taille
;
$i
++){
$nav_lnk
= ""
;
for
(
$j
=
0
;
$j
<= $i
;
$j
++){
$nav_lnk
. =
$arr_nav_dir
[
$j
]
. "/"
;
};
$nav_bar
= $nav_bar
.
""
.
$arr_nav_dir
[
$i
]
.
""
.
"/"
;
}
////////////////////////////////////////////////
// en t§Üte
echo "
<HTML><head><title>
$page_title </title>
<style fprolloverstyle>a:hover {color:
$slink_color ;text-decoration:underline}
</style>
<style>a{text-decoration:none}
</style>
</head>
$page_bg_color " text = " $txt_color " link= " $link_color
" vlink =" $vlink_color " alink= " $alink_color ">
$page_title_p
,
----
,
,
----
Dossier courant : $nav_bar,
----
,
,
\";
// FIN en t§Üte
////////////////////////////////////////////////
// traitement directory
// $arr_dir[0] = folders
$arr_dir = explode ( \"/\" ,
$directory );
$level =
sizeof (
$arr_dir )-2;
$cpt = 1;
$j =0;
while (
$j <= $level ){
$dir_cur =
$dir_cur .
$arr_dir [
$j ]. \"/\" ;
$dir_no = $arr_dir [
$j +1];
$line_dir =
p_get_dir (
$dir_cur ,
$j ,
$dir_no ,
$cpt );
$line_file = p_get_file (
$dir_cur ,
$j ,
$cpt );
if (
$line_dir [
$j ]! = \"\" )
$the_line_dir [
$j ] = $line_dir [
$j ];
if (
$line_file [
$j ]! = \"\" )
$the_line_file [
$j ] = $line_file [
$j ];
$j ++;
}
$j = 1;
$line = $the_line_dir [0].
$the_line_file [0];
while (
$j < =
$level ){
// echo \"$the_line_dir[$j]\";
// echo \"$the_line_file[$j]\";
$rep = $j -1;
$replace_str = \"x?x?x\" .
$rep .
\"x?x?x\" ;
$added_line = $the_line_dir [
$j ].
$the_line_file [
$j ];
$line =
str_replace (
$replace_str ,
$added_line ,
$line );
$j ++;
}
echo \" $line \" ;
////////////////////////////////////////////////
// pied de page
echo \"
</HTML>
";
// FIN pied de page
////////////////////////////////////////////////
?>
Afficher la suite