- ベストアンサー
php
http://log.digicafe.jp/program/sample/sample.php このサンプルでphpをやってるのですがなかなか出来ませんどういった文で出来るでしょうか?お願いします
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
>なかなか出来ません これだけでは「何がわからないのか」「どこで躓いているのか」がさっぱり伝わってきません。なので何のアドバイスも出来ません。 >どういった文で出来るでしょうか? ソースを全文書けということであれば書きますが、それを提示しても何もうれしくないですよね(苦笑 (例) <html> <head> <meta http-equiv="content-type" content="text/html;charset=UTF8;" /> <title>Sample</title> <style type="text/css"> <!-- table { border-left:1px solid #ccc; border-top:1px solid #ccc; } td { border-right:1px solid #ccc; border-bottom:1px solid #ccc; } .box { width:500px; padding:5px 0; border-bottom:1px dotted #ccc; } --> </style> </head> <body> <div style="float:left;"> <form action="sample.php" method="post"> <table width="500" cellpadding="3" cellspacing="0"> <tr> <td width="100" align="center" style="background-color:#eee;">タイトル</td> <td width="400"><input type="text" size="40" name="subject" value="" /></td> </tr> <tr> <td align="center" style="background-color:#eee;">本 文</td> <td><textarea name="text" cols="50" rows="5"></textarea></td> </tr> <tr> <td colspan="2" align="center"><input type="submit" value="保存する" /></td> </tr> </table> </form> <?php $subject = (isset($_POST['subject']))&&(is_string($_POST['subject'])) ? trim($_POST['subject']) : ''; $text = (isset($_POST['text']))&&(is_string($_POST['text'])) ? trim($_POST['text']) : ''; if (($subject !== "")&&($text !== "")) { // 非常にイヤだが、あらかじめhtmlspecialcharsせざるを得ない $subject = htmlspecialchars($subject); $text = str_replace(array("\r", "\n"), "", nl2br($text)); $fp = fopen('data.txt', 'a'); flock($fp, LOCK_EX); fwrite($fp, implode('<>', array($subject, $text, date('Y-m-d h:i:s'))) . PHP_EOL); flock($fp, LOCK_UN); fclose($fp); } else { if ($_POST) { $errmsg = "入力が不足しています!"; } } if (isset($errmsg)) { printf('<strong style="color:#e01;">%s</strong><br />', $errmsg); } ?> <strong style="color:#e01;">タイトルと本文を入力してください</strong><br /> <?php if (file_exists('data.txt')) { $fp = fopen('data.txt', 'r'); while ($line = fgets($fp)) { list($subject, $text, $date) = explode('<>', $line); printf('<div class="box"><strong style="float:left;">%s</strong><small style="float:right;">%s</small><p style="clear:both;">%s</p></div>', $subject, $date, $text); } } ?> </div> </body> </html>