Ja w zasadzie z zapytańkiem bo mam typowy książkowy przykład na wyświetlenie listy katalogów z lokalnego servera i pytanie jest następujące czy da się to przerobić tak zamieniając tylko odpowiednio funkcje można było się poruszać między katalogami jak na lokalnym serwie

<?
$default_dir = \"images/big\";
function html_header() {
?>
html nagłowka
<?php
}
function html_footer() {
?>
</body>
</html>
<?php
}
function error_message($msg) {
html_header();
echo \"<script>alert(\"$msg\"); history.go(-1)</script>\"; html_footer();
}
function mkdir_form() {
global $show, $PHP_SELF, $dir; ?>
<center>
<form method=\"post\" action=\"
<?php echo \"$PHP_SELF?show=\".$show.\"&action=make_dir&dir=$dir\"; ?>\">
<input type=\"hidden\" name=\"action\" value=\"make_dir\">
<input type=\"hidden\" name=\"dir\" value=\"
<? echo $dir; ?>\">
<?php
echo \"<font class=\"tekst-bold\">$dir</font><br>\" ?>
<br>
<input type=\"text\" name=\"new_dir\" size=\"10\" class=\"pole\">
<input type=\"submit\" value=\"Utwórz katalog\" name=\"Submit\" class=\"pole\">
</form>
<br>
<font class=\"naglowek\">Przed przesłaniem pliku wybierz katalog !!!</font>
</center>
<?php
}
function upload_file_form() {
global $show, $PHP_SELF, $dir; ?>
<center>
<form method=\"post\" enctype=\"multipart/form-data\" action=\"
<?php echo \"$PHP_SELF?show=\".$show.\"&action=upload_file\"; ?>\">
<input type=\"hidden\" name=\"dir\" value=\"
<? echo $dir; ?>\">
<font class=\"naglowek\">Upload</font> <input type=\"file\" name=\"userfile\" class=\"pole\">
<input type=\"submit\" value=\"Prze¶lij plik\" class=\"pole\">
</form>
<?php echo \"<font class=\"naglowek\">$dir_upload</font>\"; ?> </center>
<?php
}
function make_dir() {
if(!@mkdir(\"$dir/$new_dir\", 0755)) { error_message (\"Nie moge utworzyc katalogu $dir/$new_dir.\");
}
html_header();
dir_page();
html_footer();
}
function upload_file() {
global $show, $userfile, $PHP_SELF, $dir, $WINDIR; $temp_name = $_FILES['userfile']['tmp_name'];
if(!isset($WINDIR)) $_FILES['userfile']['name'] = str_replace(\"\",\"\", $_FILES['userfile']['name']); $_FILES['userfile']['name'] = str_replace(\" \",\"_\", $_FILES['userfile']['name']); if(empty($_FILES['userfile']['name'])) { error_message(\"Musisz załadować plik\");
}
if (($im[2]!=1) && ($im[2]!=2)) {
error_message(\"Dozwolone rozszerzenia jpg/gif.\");
}
$_FILES['userfile']['name'] = str_replace(\" \",\"_\", $_FILES['userfile']['name']); if(file_exists(\"$dir/\".$_FILES['userfile']['name'].\"\")) { error_message(\"\".$_FILES['userfile']['name'].\" już istnieje. Zmień nazwę przesyłanego pliku.\");
}
if(!@copy($userfile, \"$dir/\".$_FILES['userfile']['name'].\"\")) { error_message(\"Nie mogę skopiować \".$_FILES['userfile']['name'].\".\");
}
if(!isset($WINDIR) && !@unlink($_FILES['userfile']['tmp_name'])) { error_message(\"Nie mogę skasować \".$_FILES['userfile']['tmp_name'].\".\");
}
$dir_uploadb = \"$dir/\".$_FILES['userfile']['name'].\"\";
echo \"<center><font class=\"tekst\">Zauploadowano do, przekopiuj poniższ± ¶cieżkę do Adres dużego screena:</font><br><font class=\"naglowek\">$dir_uploadb</font></center>\";
html_header();
dir_page();
html_footer();
}
function dir_page() {
global $show, $dir, $default_dir, $PHP_SELF, $default_filename;
if($dir == '') {
$dir = $default_dir;
}
?>
<table border=\"0\" width=\"100%\" cellpadding=\"0\" cellspacing=\"0\">
<?php
while($file = readdir($dp)) $filenames[] = $file;
for($i = 0; $i < count($filenames); $i++) {
$file = $filenames[$i];
if($dir == $default_dir && ($file == \".\" || $file == \"..\"))
continue;
if(is_dir(\"$dir/$file\") && $file == \".\") continue;
if(is_dir(\"$dir/$file\")) { if($file == \"..\") {
$parent_dir = ereg_replace(\"/$current_dir$\",\"\",$dir); echo \"<tr><td><a href=\"$PHP_SELF?show=\".$show.\"&dir=$parent_dir\"><img src=\"admin/img/folder.gif\" border=0></a> <font class=\"naglowek\">$file</font></td></tr>n\"; }
else echo \"<tr><td><a href=\"$PHP_SELF?show=\".$show.\"&dir=$dir/$file\"><img src=\"admin/img/folder.gif\" border=0></a> <font class=\"naglowek\">$file</font></td></tr>n\"; }
else echo \"<tr><td><font class=\"tekst\">$file</font></td></tr>n\"; }
?>
</table>
<?php
mkdir_form();
upload_file_form();
}
if(empty($dir) || !ereg($default_dir, $dir)) { $dir = $default_dir;
}
switch ($action) {
case \"make_dir\":
make_dir();
break;
case \"upload_file\":
upload_file();
break;
default:
html_header();
dir_page();
html_footer();
break;
}
?>
Chodzi głownie o to jak zrobić żeby jak mam np opendir($dir) falnąć ftp_ końcówka z manuala czy jest taka możliwość czy trzeba jakoś inaczej kod napisać