ホームページ > php教程 > php手册 > PHP FTP学習 (4)

PHP FTP学習 (4)

WBOY
リリース: 2016-06-13 12:39:32
オリジナル
905 人が閲覧しました

Vikram Vaswani 著
Melonfire
2000 年 11 月 7 日
以下代码列表:
----------------------- -------------------------------------------------- -----










<入力タイプ=隠し名=アクション値=CWD>
























サーバー

<入力タイプ=テキスト名=サーバー>

ユーザー

<入力タイプ=テキスト名=ユーザー名>

パスワード

<入力タイプ=パスワード名=パスワード>






----------------------------------------------- ---------------------------------
-------------- -------------------------------------------------- ----------------








/*
------------------------------------------ --------------------------------------
免責事項:

これコードは自己責任で使用してください。

これは説明のみを目的としており、運用環境を対象としたものではありません。ユーザーにはいかなる種類の保証も提供されません。

警告されました!

すべてのコードの著作権は Melonfire, 2000 にあります。http://www.melonfire.com にアクセスしてください
---------------------- -------------------------------------------------- --------
*/

// FTP サーバーに接続する関数
function connect()
{
global $server, $username, $password ;
$conn = ftp_connect($server);
ftp_login($conn, $username, $password);
$conn を返します;
}


// メインプログラムが開始します

// 有効なフォームエントリをチェックします。そうでない場合はエラーを出力します
if (!$server || !$username || ! $password)
{
echo "フォーム データが不完全です!";
}
else
{


// 接続
$result = connect();

// アクション: ディレクトリを変更
if ($action == "CWD")
{

// 初期段階では $rdir が存在しません
//したがって、デフォルトのディレクトリであると仮定します
if (!$rdir)
{
$path = ".";
}
// 現在の場所 $cdir を取得し、要求されたディレクトリ $rdir に追加します
else
{
$path = $cdir . 「/」。 $rdir;
}

// 要求されたディレクトリに変更します
ftp_chdir($result, $path);

}

// アクション: ファイルを削除します。
else if ($action == "削除")
{

ftp_chdir($result) 、$cdir);

// 選択したファイルをループし、削除します
for ($x=0; $x{
ftp_delete($result, $cdir . "/" . $dfile[$x]);
}

}
// アクション: ファイルをダウンロード
else if ($action == "ダウンロード")
{

ftp_chdir($result, $ cdir);

// 選択したファイルをダウンロードします
// 重要: ここでは別のダウンロード場所を指定する必要があります。
for ($x=0; $x{
ftp_get($result, $dfile[$x], $dfile[$x], FTP_BINARY) ;
}

}
// アクション: ファイルをアップロード
else if ($action == "アップロード")
{

ftp_chdir($result, $ cdir);

// put file

/*
より良いアイデアは、
$res_code = ftp_put($result, $HTTP_POST_FILES["upfile"]["name") を使用することです]、
$HTTP_POST_FILES["upfile"]["tmp_name"]、FTP_BINARY);
セキュリティが強化されるため
*/
$res_code = ftp_put($result, $upfile_name, $upfile, FTP_BINARY);


// ステータスを確認し、表示します。
if ($res_code == 1)
{
$status = "アップロード成功!";
}
else
{
$status = "アップロード エラー!";
}

}

// ファイルリストを作成
$filelist = ftp_nlist($result, ".");

// および表示インターフェース
include("include.php");

// 接続を閉じます
ftp_quit($result);

}
?>





----------------------------------------------- ---------------------------------
-------------- -------------------------------------------------- ----------------



// 現在位置を取得
$here = ftp_pwd($result);

/*
ftp_size() は非常に遅いため、
ディレクトリ内のすべてのファイルを含む配列を操作する場合は特に、
このセクションではすべてのファイルに対して ftp_size() を実行します。現在の
ディレクトリに 3 つの配列を作成します。
*/

// ファイルの配列
$files = Array();

// ディレクトリの配列
$dirs = Array();

// ファイルサイズの配列
$file_sizes = Array();

// カウンタ
$file_list_counter = 0;
$dir_list_counter = 0;

// $filelist の各要素をチェックします
for ($x=0; $x{
if (ftp_size($result, $filelist[$x]) != -1)
{
// 配列を作成
$files[$file_list_counter] = $filelist[$x];
$file_sizes[$file_list_counter] = ftp_size($result, $filelist[$x]);
$file_list_counter ;
}
else
{
$dir_list[$dir_list_counter] = $filelist[$x];
$dir_list_counter ;
}
}

?>


<中央>
あなたは現在 < で働いていますか? $here をエコーし​​ます。 ?>



$ステータスをエコー; ?>




利用可能なディレクトリ:




に配置することかもしれません。
<入力タイプ=隠し名=ユーザー名値=>
<入力タイプ=隠し名=パスワード値=>
<入力タイプ=隠し名=サーバー値=>
<入力タイプ=隠し名=cdir値=>


<入力タイプ=隠し名=アクション値=CWD>


<名前=rdirを選択>
<オプション値=".."><親ディレクトリ>


for ($x=0; $x{
echo "






利用可能なファイル:



<入力タイプ=隠し名=サーバー値=>
<入力タイプ=隠し名=ユーザー名値=>
<入力タイプ=隠し名=パスワード値=>
<入力タイプ=隠し名=cdir値=>

<表の境界線=0 幅=100%>


// チェックボックスとサイズ付きのファイルリストを表示します
for ($y=0; $y{
echo " 「>」。 $files[$y] 。 " (" . $file_sizes[$y] . " バイト)";
}

?>




<入力タイプ=送信名=アクション値=削除>   
<入力タイプ=送信名=アクション値=ダウンロード>








ファイルのアップロード:



<入力タイプ=隠し名=ユーザー名値=>
<入力タイプ=隠し名=パスワード値=>
<入力タイプ=隠し名=サーバー値=>
<入力タイプ=隠し名=cdir値=>

<テーブル>




<入力タイプ=ファイル名=アップファイル>












関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート