• 締切済み

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

ファイルを updir のフォルダにアップロードしたいのですが 上手くいきません。 「ファイルアップロード失敗」 が表示されます。 ファイル名はそのままでアップしたいと思っています。 <tr> <td align="right">PDF:</td> <td> <input type=file name="update_p_pdf" size="50"> </td> </tr> ↑上のはちゃんと動いていると思います。 ↓下のがどうしても「ファイルアップロード失敗」になります。 ファイルの名前を変更しようとは思っていません。 とりあえず updir のフォルダにファイルを入れたいです。 //PDF入力 <? $uploadfile = "./updir/".$addres.".pdf"; print "<pre>"; if(move_uploaded_file($_FILES['update_p_pdf']['tmp_name'], $uploadfile)) { ?> <font color="blue">ファイルアップロード成功</font> <?php } else { ?> <font color="red">ファイルアップロード失敗</font> <?php } ?> //PDF 元のデータです。 http://proxy.f2.ymdb.yahoofs.jp/bc/269445e1/bc/5c56/admin.php?bcPbuTGBxi28K6X1

みんなの回答

  • Hardking
  • ベストアンサー率45% (73/160)
回答No.4

admin.phpのソースコードを拝見しました。 function form1 のformタグにenctype="multipart/form-data"を追記して 再度、試行してください。 <form method="post"  enctype="multipart/form-data"  action="admin.php">

ginne
質問者

お礼

有難うございました。 無事ファイルをアップロードできました。 親切な説明本当に有難うございました。

  • Hardking
  • ベストアンサー率45% (73/160)
回答No.3

move_uploaded_file関数の 第一引数、第二引数の編集を 下記のように変更して試行してください。 $updir = "./updir/"; $filetmp = $_FILES['update_p_pdf']['tmp_name']; $filename = $_FILES['update_p_pdf']['name']; if (move_uploaded_file($filetmp, $updir.$filename)) 以下省略

ginne
質問者

お礼

ご親切に有難うございました。

ginne
質問者

補足

<? $updir = "./updir/"; $filetmp = $_FILES['update_p_pdf']['tmp_name']; $filename = $_FILES['update_p_pdf']['name']; if (move_uploaded_file($filetmp, $updir.$filename)) { ?> <font color="blue">ファイルアップロード成功</font> <?php } else { ?> <font color="red">ファイルアップロード失敗</font> <?php } ?> このようにしましたが、「ファイルアップロード失敗」となりました。 何か根本的におかしいのでしょうか? http://briefcase.yahoo.co.jp/bc/sinema617/lst?&.dir=/5c56&.src=bc&.view=l 上記にソースをアップしました。 見えると良いのですが・・・。

回答No.2

$uploadfile = "./updir/".$addres.".pdf"; $addres 上記の中身にファイル名で使えない文字が入っているか ドットの数が多すぎるのでは無いでしょうか? $addres='1234'; 等にしてテストしてみては、いかがですか?

ginne
質問者

お礼

有難うございます。

  • inu2
  • ベストアンサー率33% (1229/3720)
回答No.1

一般的に、tmpディレクトリと同一階層のはアップしないものですけど・・・ ところで、アップしようとしているupdirのパーミッションは? あと、$addresって何がはいってきますか?

ginne
質問者

お礼

有難うございます。

ginne
質問者

補足

>一般的に、tmpディレクトリと同一階層のはアップしないものですけど・・・ どう書き換えればいいでしょうか? updirのパーミッションは777です。 一応すべて開放してあります。 $addresは <tr> <td align="right">メールアドレス:</td> <td> <input name="mail" type="text" size="30" value="$mail"> ☆ </td> </tr> で入力されたものです。 本当は、データベースから読み込んでカウントしたidを入れたいのですがまだできていません。 とりあえずファイルをupdirのフォルダに入れたいです。 http://proxy.f2.ymdb.yahoofs.jp/bc/269445e1/bc/5c56/aaa.txt?bcjN7TGBkZzkiuiY よろしくお願いします。

関連するQ&A