<?php
//===============================================================================
//   ■■ PHP離れ島        :サンプル ■■
//        Class        :php20030117s.php
//        Copyright    :masago.kir.jp
//        Made by        :Masago
//        Date        :2003/01/17
//        Last Update    :2003/01/17
//        
//        Comment        :配列
//        
//        Caution        :
//            (フォルダ構成)
//                  |-php20030117.php
//                  |-(files)[777] ┐
//                                 └ uranai.txt
//
//==============================================================================
//------------------------------------------------
// □ ここにファイル名を入れましょう
//    保存用フォルダのフォルダのパーミッション
//    は「777」にして下さいね。
//    このサンプルでは「files」が保存フォルダ
//    ファイルはここで指定した名前で作られます。
//-----------------------------------------------
$filename    "files/uranai.txt";    //保存ファイル
//----------------------------------------------- 
// □ 変数の初期化
//-----------------------------------------------
$buff        = array();        //ファイルバッファ
$temp        "";            //ファイルテンポラリバッファ
$error        "";            //エラーメモリ
$cnt        0;            //カウント
$uranai        "";            //占い結果
//--------------------------------------------- 
// □ ファイルを読む
//      ファイルが存在したときのみ
//---------------------------------------------
if (file_exists($filename)){
    
//読み取りモードで開く
    
$fp=@fopen($filename,"r");
    if (!
$fp){
        
$error="** ファイル読み込みのオープンで失敗しました **";
    }else{
        while(!
feof($fp)){
            
//一行ずつ読み込み=>$tempへ
            
$temp    fgets($fp);
            if (
$temp!=""){
                
//バッファ配列に保存(配列の最後にデータを保存)
                
$buff[]= $temp;
            }
        }
        
//ファイルを閉じる
        
fclose($fp);                
    }
}

//----------------------------------------------- 
// □ POSTされてたら
//----------------------------------------------- 
if ($_SERVER["REQUEST_METHOD"]=="POST"){
    
//-----------------------------------
    // ■ 占いまーす
    //-----------------------------------
        
if (isset($_POST['submit1']) && $_POST['name']!=""){ 
        
$name $_POST['name'];
        
$name htmlspecialchars($nameENT_QUOTES);//タグを無効化
        
$i=count($buff);
        if (
$i>0){
            
$ransu rand(0$i-1);
            
$uranai $buff[$ransu];
        }
    }
    
//-----------------------------------
    // ■ 占いを追加してくれてたら
    //-----------------------------------
        
if (isset($_POST['submit2']) && $_POST['msg']!=""){ 
        
$msg $_POST['msg'];
        
//--------------------------------
        // ■ ファイルに書く
        //--------------------------------
        //追加書き込みモードで開く(ファイルが無いときは作成)
            
$fp=@fopen($filename,"a+");
        if (!
$fp){
            
$error="** ファイル書き込みのオープンで失敗しました **";
        }else{
            
//排他ロック
            
flock($fp,LOCK_EX);
            
//タグを無効化 
            
$msg htmlspecialchars($msgENT_QUOTES);    
            
//書き出し
            
fputs($fp,$msg ."\n");
            
//ロックを解除
            
flock($fp,LOCK_UN);    
            
//ファイルを閉じる
            
fclose($fp);
            
$error ="登録されました。ありがとう〜<BR>あなたの占いに当たるといいなっ♪";    
        }
    }
}
?>
<HTML> 
<HEAD> 
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=utf-8"> 
<TITLE>2003/01/17 TIPS</TITLE> 
</HEAD> 
<BODY> 
<FONT SIZE="2">
<A HREF="http://masago.kir.jp/urashima/">HOME</A>&nbsp;&nbsp;
<A HREF="php20030117.php">PHP離れ島へBACK</A>&nbsp;&nbsp;
<A HREF="phpsc.php?s=php20030117s.php">このページのソース</A>
<CENTER> 
<B>〜〜 良いことだけの占いの館 〜〜</B><BR><BR>
</FONT>
<IMG SRC="img/php/20030117s.jpg" BORDER="0"><BR><BR>
<?php
//--------------------------------------------- 
// □ エラーメモリを表示
//---------------------------------------------
if ($error!=""){echo $error;}
?> 
<BR>
<FONT SIZE="2">
<FORM ACTION="<?php echo $_SERVER['SCRIPT_NAME']; ?>" METHOD="POST"> 
あなたのお名前:<INPUT TYPE="text" NAME="name" VALUE="" SIZE="20"><BR><BR>
<INPUT TYPE="submit" NAME="submit1" VALUE="今日の運勢を占う!"><BR> 
</FORM> 
</FONT>
<BR><BR>
<?php
//--------------------------------------------- 
// □ 占い内容を表示
//---------------------------------------------
if ($name!="" && $uranai!=""){
    echo 
"占いの結果が出ました!!<BR>\n";
    echo 
"<FONT SIZE=\"5\" COLOR=\"#f08080\"><B>" .$name ."さん" .$uranai ."</B></FONT><BR>\n";
}
?>
<BR><BR><BR><BR>
<FONT SIZE="2">
ん?なんですって?実はあなたも占い師さん?<BR>
じゃあ、あなたもみんなのことを占ってくれると嬉しいな♪<BR>
あ、そうそう、ここは「良いことだけの占いの館」<BR>
嬉しい、楽しい、面白い、元気が出る占いだけを教えてね。(^_^)<BR>
(例)xxxさん「<B>は宝くじが当たるでしょう。</B>」<BR>
この「」の中身の<B>太字の部分</B>を入力してね。<BR>
<FORM ACTION="<?=$PHP_SELF?>" METHOD="POST"> 
占い内容:<INPUT TYPE="text" NAME="msg" VALUE="" SIZE="80"><BR><BR>
<INPUT TYPE="submit" NAME="submit2" VALUE="占いを追加する"><BR> 
</FONT>
</FORM> 
</FONT>
</CENTER>
</BODY> 
</HTML>