| 番号 | 日時 | メッセージ |
|---|---|---|
| 33 | 2012-02-07 16:59:52 | kikioo |
| 32 | 2011-11-10 20:50:24 | ' |
| 31 | 2011-07-28 20:04:37 | <p>あかさなはやらまたあ</p> |
| 30 | 2011-07-18 09:08:22 | igufy |
| 29 | 2011-07-18 09:08:14 | ugu |
| 28 | 2011-07-18 00:02:44 | 昨今のスマートフォンにより、通信量が多くなる傾向にある。 無料ブログは、特にPCサイトは画像があり、おもくなる。 低速通信でも、軽量化することで、見かけの速度を上げることができる。 |
| 27 | 2011-07-17 23:56:42 | テストにだ。 |
| 26 | 2011-06-22 18:45:06 | set |
| 25 | 2011-06-22 15:45:17 | de |
| 24 | 2011-06-18 14:18:29 | ん? |
| 23 | 2011-06-18 14:15:47 | kanzilyou |
| 22 | 2011-06-16 22:50:12 | test |
| 21 | 2011-06-04 07:26:06 | asw |
| 20 | 2011-04-04 15:42:25 | aaaaaaaaaaaaaaaaaaaaaaaaaaaa |
| 19 | 2011-04-02 15:28:05 | l |
| 18 | 2011-02-08 16:10:17 | 奥村晴彦 |
| 17 | 2011-02-08 16:09:49 | 16 |
| 16 | 2011-02-04 08:38:54 | 奥村晴彦先生 |
| 15 | 2011-01-05 13:43:35 | 123456789 |
| 14 | 2010-11-25 22:14:09 | いいい |
上には次のように書いてあるだけです。
<form action="sqbbs.php" method="post">
<p>メッセージ:<br />
<textarea name="msg" rows="5" cols="60"></textarea><br />
<input type="submit" value="送る" />
<input type="reset" value="クリア" /></p>
</form>
<?php
try {
$db = new PDO('sqlite:ファイル名');
if ($_POST['msg'] != '') {
$t = $db->quote(date("Y-m-d H:i:s"));
$msg = $db->quote($_POST['msg']);
$sql = "insert into okumurabbs values(NULL, $t, $msg)";
$result = $db->exec($sql)
or die("<p>書き込みに失敗しました</p>");
}
$sql = "select * from okumurabbs order by id desc limit 20";
echo "<table border=\"1\">\n";
echo "<tr><th>番号</th><th>日時</th><th>メッセージ</th></tr>\n";
foreach ($db->query($sql) as $a) {
echo "<tr><td>", $a['id'], "</td><td>", $a['t'], "</td><td>",
htmlspecialchars($a['msg']), "</td></tr>\n";
}
echo "</table>\n";
$db = null;
} catch (PDOException $e) {
echo "<p>エラー:", $e->getMessage(), "</p>";
}
?>
ここではあらかじめ次のようにして okumurabbs という名前のテーブルを作っておきました。
sqlite3 ファイル名 create table okumurabbs(id integer primary key, t text, msg text); .quit
SQLite は integer primary key に NULL という値を insert すると1から始まる連番を自動挿入します。 上の例では連番がなくても日時で並べることもできますが,削除のときには番号があると楽です。
特殊文字の無害化については セキュリティ上の配慮 をご覧ください。
Last modified: 2010-08-01 22:37:24