- ベストアンサー
変数を使ってファイル名を自分でつけたい。
フォームを使って、自分でファイル名をつけたdatファイルを サーバー上に保存するプログラムを書いているのですが、 変数をファイル名に指定するところがうまくいきません。 asperlを使ったローカルのテストではうまく自分がつけた名前のファイルを生成してくれますが、 実際にサーバー上で実行すると.datというファイルしか出来ません。 何か構文的な間違いがあるのでしょうか? 分かりにくい質問かとは思いますが、ご回答お願いいたします。 #cgi-lib.plからformの情報を取り出し &ReadParse(*form); $fn=$form{'filename'}; $main=$form{'main'}; #$mainの情報を、「変数.dat」に書き込み open(MAIN,">${fn}.dat"); print MAIN "$main"; close(MAIN);
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
とりあえず確認なんですが、 > $fn=$form{'filename'}; これで$fnに期待通りの値が入ってきてますか? 念のため、%formのキーと値を全部ダンプして確認してみた方が 良いと思います。
その他の回答 (1)
- danmarino
- ベストアンサー率63% (26/41)
回答No.2
open(MAIN,">${fn}.dat"); は open(MAIN,">$fn.dat"); の間違いでは? あるいは $fn="$form{'filename'}.dat"; open(MAIN,">$fn"); とか
お礼
ありがとうございます。解決しました。z