![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
パソコンを買い替えたため新しく「apache2.2」「php5」「mysql5」を入れ直しました。
商品の購入サンプルプログラムで試運転していたところ、購入情報を記録するファイルが開けずエラーが発生してしまいました。
Warning: fopen(/tmp/count.dat) [function.fopen]: failed to open stream: No such file or directory in C:\Apache2.2\htdocs\sample1-3-1.php on line 8
ファイルをオープンできませんでした
このプログラムの8行目は
$file = fopen($count_file, "w") or die("ファイルをオープンできませんでした");
になっています。
指定されたファイルが無い場合は新規作成される筈ですが、新規作成できていません。
このフォルダが読み込み専用になってるのかと思い、コメンドプロントで「attrib -r c:\apache2.2\htdocs」を入力し、読みより専用を解除してみましたが結果は変わりません。
手動で指定のファイルを作ったところ、エラーは出ず正常に動作します。
その都度ファイルを手動で作るわけにも行かず困っています。
詳しい方がいらっしゃいましたらどうかご教授お願いします。
型番:NEC LaVie L PC-LL750CS3KS
OS:Windows7 Home Premium 64bit
AMP環境:apache2.2.17 + php5.3.5 + mysql5.1.52
No.1ベストアンサー
- 回答日時:
エラーメッセージには「Warning: fopen(/tmp/count.dat)」とありますので、
\tmpフォルダにcount.datを作成しようとしたが\tmpフォルダがなかったためfopenが失敗した、
ということなんじゃないかと思うんです。
なので解決方法としては
・C:\tmpフォルダを作成する
・phpプログラムの中で /tmp/count.dat と書かれてある部分から /tmp/ を削除する(phpと同じフォルダにcount.datが作成されます)
でいいと思うんです。
手動で指定のファイルを作成したら動いたというのがどういうことかよくわからないですね。
ありがとうございます!
アドバイスのおかげで無事ファイルの新規作成ができました!
原因はアドバイスを頂いた通り、「tmpフォルダの未作成」と「ファイルのパスが絶対パスになっていた」ことでした。
昔のパソコンの時は勝手にtmpフォルダが作成され、
下記のような書き方でカレントディレクトリが指定されていましたが、今のパソコンでは絶体パスになるためC:\tmpに保存されてしまっていました。
$count_file="/tmp/count.dat";
phpのバージョンの違いでしょうか
tmpフォルダを手動で作成し、
$count_file="/tmp/count.dat";を、
$count_file="tmp/count.dat";
に書き直すと無事動作しました
64bitのパソコンを使用しているために上手く動作しないのかと思っていましたが単なる記述ミスでした。
とりあえず動作したので安心です、
どうもありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 画像編集・動画編集・音楽編集 DVD Styler トラブル解決方法 6 2022/10/29 16:00
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
- MySQL mysqlがインストールされているのかどうか 1 2023/06/05 14:19
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
サイトのphpソースコードを表示...
-
use と requireの違いは?
-
CakePHPの .htaccess設定について
-
別のドメインのファイルをrequire
-
apache+phpにおいてリクエスト...
-
.phpと.incファイルの違いはな...
-
【file_exists】ファイルが存在...
-
phpが実行できない
-
さくらレンタルサーバーでPHPが...
-
phpmailerで送れない添付ファイ...
-
CFileDialogの最初のディレクト...
-
VB6にてメールを送信する方法
-
onedrive にexcelファイルをア...
-
phpのheader("Location:#pos")...
-
バイナリファイルをブラウザに...
-
OpenGLで描いて画像ファイル出力
-
フォントの色を変えるには?
-
VB.NET 最下位のディレクトリ名...
-
リンク先を隠す方法はないでし...
-
PHPのif文でその処理を途中で抜...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
.phpと.incファイルの違いはな...
-
【file_exists】ファイルが存在...
-
.phpファイルが、表示されない
-
URLが.PHPってどういう...
-
use と requireの違いは?
-
PHPからCronを編集したい
-
HTMLに埋め込んだPHPがうまく出...
-
さくらレンタルサーバーでPHPが...
-
プロパティファイルの読み込み...
-
htmlspecialcharsが機能してい...
-
PHPファイルの中身が見られるこ...
-
サーバ無しでphpを動作させる
-
thtmlファイルとはどんなファイ...
-
phpの書き方
-
PHP+MySQL SQL文を外部ファイル...
-
PHPの慣習的な書き方・組み方に...
-
cakephpで特定ファイル表示(hta...
-
PHPを使ってのサーバ上ファイル...
-
session_start()でwarningが表...
-
fopenでファイルを読み込み、そ...
おすすめ情報