- 締切済み
ディレクトリ作成
ユーザが入力した名前のファイルを作成するプログラムを作っているのですが、うまくいきません。 <html> <head> <title>データ受け渡し</title> </head> <body> <?php echo "<p>入力内容:".@$_POST["text1"]; $dir = /dir/$_POST["text1"]; mkdir($dir, 0777); ?> <form method="POST" action="<?php echo $_SERVER["PHP_SELF"]?>"> <table> <tr> <td><input type="text" name="text1"></td> <td><input type="submit" value="送信" name="sub1"></td> </tr> </table> </form> </body> </html> サーバの dir というディレクトリ内に 入力された名前のファイルを作りたいのですが、エラーが出てしまいます。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- sakusaker7
- ベストアンサー率62% (800/1280)
> $dir = /dir/$_POST["text1"]; > の部分がエラーを起こしています。 > ここの処理の仕方を教えていただきたいで。 ここで構文エラーが起きているという話なら代入の右辺を "/dir/" . $_POS["text1"]; にしないといけないのでは?
- meenie
- ベストアンサー率44% (40/90)
>$dir = /dir/$_POST["text1"]; ここは文法エラーになりませんか? >mkdir($dir, 0777); この命令が正しく機能した場合、/dir/(入力文字列) というディレクトリが作成されます。 ファイルを作成するなら、 touch($dir); (PHPバージョン3以上)
お礼
$dir = /dir/$_POST["text1"]; の部分がエラーを起こしています。 ここの処理の仕方を教えていただきたいです。 dirディレクトリに text1で入力された名前のファイルを作成したいです。
- haru1234
- ベストアンサー率47% (22/46)
> サーバの dir というディレクトリ内に 入力された名前のファイルを作りたいのですが、エラーが出てしまいます。 じゃ、まずはエラーの内容をここに書きましょうか。 最低限下記の内容は埋めて質問して頂けると助かります。 ブラウザに表示されたエラーの内容: 使用しているOS: PHPのバージョン: ついでに、今回は /dirディレクトリの のオーナーと権限の情報も補足をお願いします。
お礼
エラーは文法エラーなので、ディレクトリの指定の仕方などが間違っていると思います。 OSはdebian PHPのバージョンは5.0.5 です。 dirディレクトリのパーミッションは現在0777にしてあります。
お礼
ありがとうございました。 $dir = "./dir/" .$_POST["text1"]; とすることで解決いたしました。 迅速な回答ほんと感謝します。