PHP超入門 (56)
■そして最後の処理■
ここからが今号の本題になります。
上記のようにブラウザに表示され、イロイロ修正した中身を再び、サーバーの
ハードディスクに保存しなければなりません。
では、実際にそれを実行するにはどうしたらいいでしょうか?
答えは。。。
そう、上のPHPプログラムの中にあります!!。
上記PHPプログラムの中ほどにある、
「form action="096-3.php" method="post"」
という箇所です。
具体的には、ブラウザに示されたフォーム上で、いろいろ文章(テキスト)の
内容を修正した後、
に表示された「入力」のボタンを押すと、「096-3.php」のプログラムが動作す
ることになります。
改めて「096-3.php」の中身を細かく見るのもカッタルイと思いますので、詳細
は、ここでは省きます。
さて、ここで、申し訳ありませんが、上記
---------------------------------------------------------------------------------
<?php
$hensuu02 = $_GET["hensuu01"];
$filePath = "C:\\inetpub\\wwwroot\\php\\" . $hensuu02;
$text01 = file_get_contents($filePath);
?>
<html>
<head>
<title>入力フォーム</title>
</head>
<body>
<form action="096-3.php" method="post">
テキスト入力<br>
<FORM><TEXTAREA rows="10" cols="20"><?php print($text01) ?></TEXTAREA></FORM><br>
<input type="submit" name="bottun1" value="入 力">
</form>
</body>
</html>
---------------------------------------------------------------------------------
のPHPプログラムというかHTML文に間違いがありました。
いわゆる「バグ」というヤツです。
この前回、私が考えてメルマガの内容として書いたプログラムというか、HT
ML文は実を言うと、タグを手打ちで書くのが面倒だったので、ホームページ
ビルダーで作ったものをコピペしたのですが、この記事を書いていて、実際に
「入力」ボタンを押したら。。。
「アレッッ?動かない」「エラーメッセージも返ってこない」ということが判
明しました(汗)。
大変申し訳ありませんが、以下のように訂正したいと思います。
---------------------------------------------------------------------------------
<?php
$hensuu02 = $_GET["hensuu01"];
$filePath = "C:\\inetpub\\wwwroot\\php\\" . $hensuu02;
$text01 = file_get_contents($filePath);
?>
<html>
<head>
<title>入力フォーム</title>
</head>
<body>
<form action="112-1.php" method="post">
テキスト入力<br>
<TEXTAREA name="text01" rows="10" cols="20"><?php print($text01) ?></TEXTAREA><br>
<input type="submit" name="bottun1" value="入 力">
</form>
</body>
</html>
---------------------------------------------------------------------------------
で、話を元に戻しまして、ブラウザ上に表示・修正した内容をサーバーのハー
ドディスクに保存する作業です。
繰り返しになってしまいますが、ブラウザに表示されている「入力」ボタンを
押すことにより動作するPHPプログラムを私としては、以下のものを考えて
みました。
(あくまでも一例であって、これが正解という訳ではありません)
---------------------------------------------------------
<?php
$text01 = $_POST["text01"];
$file = fopen("C:\\inetpub\\wwwroot\\php\\test.txt","w");
fwrite($file,$text01);
fclose($file);
print("書き込み終了しました。");
?>
---------------------------------------------------------
細かい話は後にしまして、上記のPHPプログラムを「112-1.php」というファ
イル名で「C:\Inetpub\wwwroot\php」に保存します。
そして、改めて、ブラウザのアドレス欄に「http://localhost/php/109-1.php」
と入力し、フォームに表示された内容を、自分が好きなように編集し、
「入力」ボタンを押すと、「書き込み終了しました。」というメッセージが表
示されます。
この画面を確認した後、エクスプローラを立ち上げて、「C:\Inetpub\wwwroot
\php」フォルダにある「test.txt」の中身を見てみると。。。
見事、ブラウザで修正した内容が反映されていました!!
(私の場合ですが。。。)