[PHP-users 18409]FTP関数でアップロードするとファイル名が変わってしまう

wataru fujie watalu @ ma4.justnet.ne.jp
2003年 10月 11日 (土) 20:05:52 JST


フジエと申します。

初投稿です。よろしくおねがいします。
最近PHPを勉強し始めました初心者です。

FTP関数を使用してファイルをアップロードするフォームを作ろうと思い、
オンラインマニュアルのFTP関数項に書いてある例文通りの書き方をしてみました。
http://php.planetmirror.com/manual/ja/ref.ftp.php の下の方の文です。

その上部分に

$ftp_server="ホスト名";
$ftp_user_name="ユーザ名";
$ftp_user_pass="パスワード";

$destination_file="$upfile"; 
$source_file="$upfile";


を追加して「upload.php」で保存。
「up.html」からフォームのname属性<name="upfile">でこの「upload.php」に送る
ようにしています。

ローカル環境でのテスト結果、

<ブラウザ表示>
Connected to ”ホスト名”,”for ユーザ名”
Uploaded c:\windows\temp\php41.tmp to ”ホスト名” as
c:\windows\temp\php41.tmp

と表示されます。
一応接続に成功し、アップロードもできるのですが、
「c:\windows\temp\php41.tmp」というのが指定したパス・ファイル名とは大きく異
なるものになってしまいます。
例えば「C:\test\test.txt」をアップロードしようとすると
「c:\windows\temp\php43.tmp」というファイル名に変更されてしまいます。FTP
ソフトで見てみたところ、そのまま「c:\windows\temp\php43.tmp」というファイル
名でUPされていました。
ちなみにファイル自体は壊れておらず、拡張子を戻せば元通り使用できます。

フォームの文字列をそのまま送るにはどうしたらよいのでしょうか?

なにぶんプログラム自体が初心者なもので細かいところが良くわからずアップアップ
しています。
環境はwindowsXP、apache1.3、php4.2.3 です。

お手すきの方おられましたらご教授のほうよろしくお願いします。



PHP-users メーリングリストの案内