logo

その他にもどる

書き込み

前項のフォームではメールを送信したが、ここには記録させる方法を掲載

下のスクリプトを kakikomi.php というファイル名で保存し、書き込み用のファイルを kakimoki.log として同じフォルダに置く

<html>
<head>
</head>
<body>

<?php
mb_language("ja");
mb_internal_encoding('EUC-JP');
$logFile = "kakimoki.log";      //書き込みするファイル名

if (isset($_POST["sousin"])){
        $blog = fopen ("$logFile","r");
        $bdata = fgets ($blog);
        list($bNo) = explode(",",$bdata);
        fclose($blog);
        $No = $bNo + 1;                    //書き込みNoを取得

        $name = $_POST['name'];
        $email = $_POST['email'];
        $title = $_POST['title'];
        $comment = $_POST['comment'];

        $log = file("$logFile");
        $newline = "$No,$name,$email,$title,$comment\n";    //カンマ区切りで保存
        $log2 = fopen("$logFile","w");
        flock($log2, LOCK_EX);
        fputs($log2, $newline);
        for($i = 0; $i < count($log); $i++){
            fputs($log2, $log[$i]);
        }
        flock ($log2, LOCK_UN);
        fclose ($log2);
}
?>

  <form method="post" action="kakikomi.php">
    お名前: <input type="text" name="name" size=40><br>
    メールアドレス: <input type="text" name="email" size=60><br>
    件名: <input type="text" name="title" size=60><br>
    本文: <textarea name="comment" cols=50 rows=5></textarea><br>
    <input type="submit" name="sousin" value="書き込み">
  </form>

</body>
</html>
※上は最小限のスクリプトで、実際には入力チェックなど必要であり、このままでは不十分

チェックの方法は次ページに記載

---- End ----

↑PageTop その他にもどる