街中で見かけて「グッときた人」の思い出

PHPについて
パソコンの面白さにひかれて、PHPの無料講座から勉強をしようと思いましたが、第一歩からつまづきました。年寄りです。よろしくお願いします。
例題のスクリプトをTera Pad に手で入力をしました。間違いがないか何回も(3回)見直し、間違いがないことを確認し、テキストエディタフォルダの中に入れたXAMPPフォルダのhtdocsフォルダの中に名前をつけて保存でtest.phpで保存をしましたが、確認をしてみるとテキスト保存になっていました。
どうすれば、テキストエディタに入力したスクリプトを確認できるのでしょうか?
以下が例題です。

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja"><head>
<meta http-equiv="Content-type" content="text/html; charset=EUC-JP">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rel="stylesheet" href="../style.css">
<title>画面に文字を表示させる</title></head>
<body><div class="file2">
<!--ここからform形式で文字を入力します。送り先(action)はこのファイル-->
ここに文字を入れて表示ボタンを押してね。<br>
<form action="01_01_send.php" method="post">
<input type="text" name="date" size="30">
<input type="submit" value="表示!"></form>
<!--ここからPHPが始まります。//-->
<?php /*PHPの楷書を宣言します*/
error_reporting(1);
$data=$_POST["data"]; /*$dataと言う変数に、form actionで送られたdateを代入します*/
$data="htmlspecialchars($data.ENT_QUOTES); //タグを無効化
echo $data; /*画面上に $data すなわち入力された文字を表示します*/
$filepointer=fopen("./send/send.txt"."a+");
flock($filepointer.LOCK_EX);
fputs($filepointer.$data."\n");
flock($filepointer.LOCK_UN);
fclose($filepointer);
?>
<!--これでPHPは終わりです。//-->
</div></body></html>

A 回答 (4件)

PHPはテキストのままでOKです。

確認するには mudamuda546さんの仰る通り、
サーバであるXAMPP をスタートさせてから、IEで閲覧します。
自分のPCのサーバはアドレスが http://localhost/ が基本ですから、
「htdocsフォルダの中に test.phpで保存」されたのなら、アドレスは
http://localhost/test.php になります。

さて、ここから肝心のスクリプトの方ですが、細かなミスが散在しています。

<form action="01_01_send.php" ~
これだと送信内容は01_01_send.phpに飛んでいってしまいます。たぶん同じく
test.phpで受け取りたいと思いますので test.phpに直します。

タイプミス
<input type="text" name="date"
スクリブト内では $_POST["data"] となっていますので、統一しましょう。

その他タイプミスたくさん。カンマ「,」であるべきところがピリオド「.」になっています。
flock($filepointer「.」LOCK_UN); とその周辺。
ちなみに fputsの $data「.」"\n");は、接続なので . のままでOK。

あとは $data="htmlspecialchars( ~と不要な「 " 」があったりします。
全体で 7~8箇所程度、修正すれば動きますよ。
あきらめず頑張ってください。
    • good
    • 0
この回答へのお礼

ありがとうございます。
皆様方のお気持ちの暖かさを痛感しているところです。
御礼が遅れたのはできるものなら動いてからと思っていましたが、
残念ながら動きませんでした。
ご指摘の一つ一つを何度も確認をしながら頑張ってみます。
ありがとうございました。
決して諦めることなく、動くまで頑張って見ようと思います。

お礼日時:2010/06/25 12:55

>回答ですが、PHPサーバー(つまりPHPを実行してくれる人)はどこにありますか?


そんなものない。
Web上で実行するにはWebサーバのモジュールとして実行するかCGIモードで実行するかです。

>ありがとうございます。
>クリックしてみたところ、Internet Explorer ではこのページは表示できませんと、表示され
>表示できませんでした。
ということはWebサーバが動いていません。
XAMPPはインストールしてApacheを動かせば(サービスとしてまたはXAMPP Control Panel上から手動で起動する)PHPはデフォルトで使えるようになっている。

>間違いがないか何回も(3回)見直し、間違いがないことを確認し
これ無駄な作業。エラーがあればPHPのインタプリタがエラー内容を行番号付きで教えてくれるから
そんなに神経質になる必要はない。

>XAMPPフォルダのhtdocsフォルダの中に名前をつけて保存でtest.phpで保存をしましたが、確認をしてみるとテキスト保存になっていました。
どうせエクスプローラから直接ダブルクリックで開こうとしただけでは?
    • good
    • 0
この回答へのお礼

ありがとうございました。
もうすこしサーバーについて勉強しなおします。
1ヶ所1ヶ所御指摘いただきわかりやすかったです。
HTMLタグは1年半かけて自分なりに勉強してきたつもりですが、いまでは
ホームページビルダーにまかせっきりです。
ありがとうございました。なにせパソコンに触れて
まだ10年目で素人には敷居が高すぎでした。高齢でもあり、なかなか
頭の中に入らないのが実態です。申し訳なかったです。

お礼日時:2010/06/24 18:53

いや、質問者さん・・・


php504 さんが言った意味は、そうではないんです。
別の言葉にすると127.0.0.1にサーバーはあるか?と聞いたんですけどね。
で、回答ですが、PHPサーバー(つまりPHPを実行してくれる人)はどこにありますか?
もし、そもそもないのでは、実行なんとかより、そもそも、サーバーを理解していなそうなので、
そこから入った方がいいかもしれません。
    • good
    • 0
この回答へのお礼

ありがとうございます。
サーバーを理解しなければいけないのですね。
勉強しなおします。ありがとうございました。

お礼日時:2010/06/24 18:43

http://localhost/
上のリンクをクリックしたらどうなりますか

この回答への補足

ありがとうございます。
クリックしてみたところ、Internet Explorer ではこのページは表示できませんと、表示され
表示できませんでした。

補足日時:2010/06/24 17:24
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!