PHPのお勉強



簡易リンク集@PHP

簡易リンク集です。
登録されたリンクを表示するだけです。

登録には、サイト名とURLを入力します。
また、登録パスワードが必要です。


<html>
<head>
<title>リンク集</title>
</head>
<body>

<?php

$name = trim($_POST["nameTxt"]);
$url = trim($_POST["urlTxt"]);
$pass = trim($_POST["passTxt"]);

//タグ削除
$name = strip_tags($name);
$url = strip_tags($url);
$pass = strip_tags($pass);

if ((strlen("$name") == 0) && (strlen("$url") == 0)) {
    print "<font color='red'>サイト名とURLを入力してください。</font>";
} else {
    //登録パスワード認証(パスワード:777)
    if ($pass == "777") {
    
        //ファイルに登録
        $fileName = "link.cgi";
        $link = $name ."," .$url ."\r\n";
        
        $file = fopen($fileName,"a");
        
        //ファイル書き込み処理
        //書き込み時にファイルをロックする。
        flock($file, LOCK_EX);
        fputs($file,$link);
        flock($file, LOCK_UN);
    
        fclose($file);
        
        //初期化
        $name = "";
        $url = "";
        $pass = "";
        print "<font color='red'>登録しました。</font>";
    } else {
        print "<font color='red'>登録パスワードが違います。</font>";
    }
}

print <<<END
<form method="post" action="./link.php">
<table border="1" cellspacing="0" cellpadding="0">
    <tr>
        <td bgcolor="#CCCCCC">サイト名</td>
        <td>
            <input type="text" name="nameTxt" value="$name" size="">
        </td>
    </tr>
    <tr>
        <td bgcolor="#CCCCCC">URL</td>
        <td>
            <input type="text" name="urlTxt" value="$url" size="">
        </td>
    </tr>
</table>
<BR>
登録パスワード<input type="text" name="passTxt" value="$pass" size="">
<input type="submit" value="登録">
</form>
END;

print "<hr>";

//ファイルを読み込んでリンクを表示
$fileName = "link.cgi";
$file = fopen($fileName,"r");

while(!feof($file)){
    $str = explode(",",fgets($file));
    print getUrl($str[0],$str[1]) ."<BR>";
}
fclose($file);

//リンクを取得
function getUrl($name,$url) {
    return "<a href='" .$url ."' target='_blank'>" .$name . "</a>";
}

?>

</body>
</html>


Copyright (C) PHPのお勉強. All Rights Reserved.