Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- function h($str) {
- return htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
- }
- $p = new stdClass;
- foreach (array('info', 'password', 'persistent', 'submit') as $v) {
- $p->$v = isset($_POST[$v]) && is_string($_POST[$v]) ? $_POST[$v] : '';
- }
- $c = new stdClass;
- foreach (array('password', 'persistent') as $v) {
- $c->$v = isset($_COOKIE[$v]) && is_string($_COOKIE[$v]) ? $_COOKIE[$v] : '';
- }
- $info = is_file('info.txt') ? file_get_contents('info.txt') : '';
- $password = $c->password;
- $persistent = $c->persistent ? ' checked' : '';
- if ($p->submit) {
- $info = $p->info;
- $password = $p->password;
- $persistent = $p->persistent ? ' checked' : '';
- $expire = $persistent ? time() + 604800 : 1;
- setcookie('persistent', '1', $expire);
- setcookie('password', $password, $expire);
- if ($p->password !== 'XXXXXXXXXXXXXXXX') {
- $msg = array('red', 'パスワードが違います');
- } else {
- file_put_contents('info.txt', $p->info, LOCK_EX);
- $msg = array('green', 'ファイルを更新しました');
- }
- }
- header('Content-Type: text/html; charset=utf-8');
- ?>
- <!DOCTYPE html>
- <html>
- <head>
- <title>新着情報更新</title>
- </head>
- <body>
- <h1>新着情報</h1>
- <form method="post" action="">
- <?php if (isset($msg)): ?>
- <p><span style="color:<?=h($msg[0])?>;"><?=h($msg[1])?></span></p>
- <?php endif; ?>
- <p>
- 内容<br />
- <textarea name="info" cols="50" rows="7"><?=h($info)?></textarea>
- </p>
- <p>
- パスワード
- <input type="password" name="password" value="<?=h($password)?>"><br />
- <input type="checkbox" name="persistent" value="1"<?=h($persistent)?>>パスワードを保存する
- </p>
- <input type="submit" name="submit" value="更新">
- </form>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement