- 締切済み
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
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- Hardking
- ベストアンサー率45% (73/160)
admin.phpのソースコードを拝見しました。 function form1 のformタグにenctype="multipart/form-data"を追記して 再度、試行してください。 <form method="post" enctype="multipart/form-data" action="admin.php">
- Hardking
- ベストアンサー率45% (73/160)
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)) 以下省略
お礼
ご親切に有難うございました。
補足
<? $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 上記にソースをアップしました。 見えると良いのですが・・・。
- NickAomori
- ベストアンサー率40% (11/27)
$uploadfile = "./updir/".$addres.".pdf"; $addres 上記の中身にファイル名で使えない文字が入っているか ドットの数が多すぎるのでは無いでしょうか? $addres='1234'; 等にしてテストしてみては、いかがですか?
お礼
有難うございます。
- inu2
- ベストアンサー率33% (1229/3720)
一般的に、tmpディレクトリと同一階層のはアップしないものですけど・・・ ところで、アップしようとしているupdirのパーミッションは? あと、$addresって何がはいってきますか?
お礼
有難うございます。
補足
>一般的に、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 よろしくお願いします。
お礼
有難うございました。 無事ファイルをアップロードできました。 親切な説明本当に有難うございました。