什么的神情 填空题,一( )山神

【】【】【】【】【】【】
本网页地址:&&
================================================================================================================================================================
本网站提供的小说《》版权为原作者所有。阅读更多请到各大书店或网店购买,支持正版小说。
All Rights Reserved
&&&&更新时间: 00:11:54
请您记住"晋江小说网"的网站地址:http://www./ , 第一时间阅读《神藏》的最新章节 !
温馨提示:方向键左右(← →)前后翻页,上下(↑ ↓)上下滚用, 回车键:返回目录
重要声明:小说“神藏"所有的文字、目录、评论、图片等,均由网友发表或上传并维护或来自搜索引擎结果,属个人行为,与本站立场无关。阅读更多小说最新章节请返回,支持"神藏”请到各大书店或网店购买阅读。
Copyright (C) http://www./ All Rights Reserved晋江小说网当前位置:
>>>名著阅读填空。(5分)武松乘着酒兴,走上冈子来,见一个败落的山神..
名著阅读填空。(5分)武松乘着酒兴,走上冈子来,见一个败落的山神庙。行到庙前,见这庙门上贴着一张印信榜文。武松读了印信榜文,方知端的有虎,欲转身再回酒店……小题1:上文节选自古典长篇小说《________》,小说中另一位打虎的人物是_________(2分)小题2:作者要塑造武松“打虎英雄”的形象,却为何写武松胆怯,想转身回去?(3分)______________________________________________________________________________________
题型:阅读理解与欣赏难度:中档来源:不详
小题1:《水浒》或《水浒传》 李逵小题2:以人搏虎,危险;真实;小题1:试题分析:《水浒》是要求初中阶段学生必读的名著,对于其中的主要人物,主要故事情节,学生要熟知。武松、李逵,学生应该知道。小题2:试题分析:塑造“武松打虎”,主要人物是武松,写武松胆怯,转身离去,也是为了塑造武松的形象。只要抓住这点,理解起来就不难了。
马上分享给同学
据魔方格专家权威分析,试题“名著阅读填空。(5分)武松乘着酒兴,走上冈子来,见一个败落的山神..”主要考查你对&&诗文背诵&&等考点的理解。关于这些考点的“档案”如下:
现在没空?点击收藏,以后再看。
因为篇幅有限,只列出部分考点,详细请访问。
古诗文:是我们中华民族最灿烂的明珠,源远流长的古诗文是祖国文化经久不衰的瑰宝。那一曲曲动人心弦的诗词给了我们美好的享受;那一篇篇脍炙人口的佳作给了我们无尽的教益。正因如此,古诗文背诵默写也作为中考必考的范围。诗文背诵技巧:诗文背诵的考查方式主要有:古诗词默写、课文默写、名篇名段默写以及对内容的理解性默写。一、加强诵读“书读百遍,其义自现”,反复朗读,可在大脑皮层形成连贯的信号刺激,从而强化记忆效果,提高背诵效率。养成良好的阅读习惯:①字典随身带,边看边查;②开动脑筋,边看边想;③笔不离手,边看边画;④防止遗忘,边看边批;⑤为讲故事,作好准备。这种导读方式,训练了学生多种阅读能力:①阅读的思维能力;②阅读的理解能力;③阅读的知行合一能力;④阅读的记忆能力;⑤阅读的表述能力。反复朗读,不厌其烦,读得顺畅、流利、朗朗上口,读出节奏,读出语气,读出感情。正所谓“磨刀不误砍柴功”,如果把背诵比作“砍柴”,那么“朗读”就是“磨刀”。事实证明:反复朗读后,就会发现课文差不多背下来了。读得越熟练、越流利,背诵就越快、越好。二、用科学的方法有计划地安排背诵“德国有一位著名的心理学家名叫艾宾浩斯,他在1885年揭示遗忘的规律。在通过实验表明:在学习材料之后,隔20分钟重新学习时初中语文论文,记忆量为58.2%;1小时后,记忆量为44.2%;一天后记忆量为33.7%;6天后记忆量下降到25.4%。根据这些数据绘成的曲线,就是艾宾浩斯遗忘曲线。”①根据遗忘曲线,科学家们找出了最佳的记忆周期:第一个记忆周期是1小时,第二个记忆周期是 1天,第三个记忆周期是 4天,第四个记忆周期是7天 ,第五个记忆周期是15天,第六个记忆周期是31天。根据这个记忆周期,对于背诵科学安排,有计划地背诵。如果按照上边的记忆周期来进行安排背诵时间,就可以减少遗忘,达到长期记忆的效果。按照这个记忆周期进行巩固循环,就能有计划的、轻轻松松地将这些古诗文烂熟于心了。②另外,“科学研究表明,人每天有四个高潮记忆点:第一点是清晨六至七点,第二点是上午八至十点,第三点是傍晚六至八点,第四点是临睡前一两个小时。”因此,要养成良好的学习习惯,充分利用晨起和临睡前的时间背诵,以期收到最好的学习效果。三、背诵方式①理解记忆 “按识记是否建立在理解的基础上,可以把识记分为机械识记和意义识记。意义识记是一种与思维活动紧密联系的、积极主动的识记,所以它的效果总是优于机械识记。”因此,我们必须进行意义识记。对于未教的诗文可以通过辅导书对全文有个大致的理解,明确文章的脉络来背诵,自然能够提高背诵的效率。②结合思路层次背诵。每一篇,每一段课文都有思路层次,结合思路层次,既背的快,又不易忘。在哪儿背不下去了,想一下层次,往往会记起应该是哪一句。本方法常和第三条结合使用。比如背诵蒲松龄的《狼》。课文有四个层次,依次未:屠夫遇狼;屠夫惧狼;屠夫御狼;屠夫毙狼。按照这个思路,背诵起来就会比较轻松。背到“缀行甚远”时,如果背不下去了,想一下下一层是“屠夫惧狼”,就很容易想起来下一层句是“屠惧,投以骨”。有的课文比较长,可先分析原文段落层次,概括其要点,然后对照要点背诵,可以大大节省背诵时间且不容易忘记。以《出师表》为例:A、提出三点建议:(1)广开言路(分析形势,提出建议)。(2)严明赏罚(正反论述)。(3)亲贤远佞(推荐文臣,举荐武将,总结教训)B、表达一片忠心:(1)自叙经历(表明志向,感激先帝)。(2)劝勉后主(报效先帝,共兴大业)C、明确各方责任:(1)先说自己(讨贼兴复)。(2)再说大臣(兴德之言)。(3)后言陛下(咨诹善道)③动笔写写抄写能够加深学生对字形的掌握,而且还是一种很好的记忆方式,俗话说:“好记性不如烂笔头”。所以,完成背诵时,要结合抄写,当注意力无法集中的时候就抄写。而默写可有效巩固已经背诵了的课文,而且对加深记忆大有好处。四、及时巩固利用一段时间背会了一段课文,并不就是万事大吉了,还必须及时巩固。根据记忆规律,记忆内容要经过7遍左右的复习巩固才能真正保持住。一般地说,复习需要第二天一次,三天后一次,一周后一次,一月后一次,半年后一次,一年后一次,这样才可说真正背诵了记忆内容,而且几乎不会再忘记。总之,要提高背诵的效益,就要在朗读、理解上下功夫,采用灵活有效的方法,注意复习巩固背诵成果。这样,背诵古诗文就不难了。中考背诵诗文:
1.学而时习之,不亦说乎?有朋自远方来,不亦乐乎?——《论语·学而》&
温故而知新,可以为师矣。——《论语·为政》&
学而不思则罔,思而不学则殆。——《论语·为政》&
知之为知之,不知为不知,是知也。——《论语·为政》&
见贤思齐焉,见不贤而自内省也。——《论语·里仁》&
三人行,必有我师焉。择其善者而从之,其不善者而改之。——《论语·述而》&
己所不欲,勿施于人。——《论语·卫灵公》&
2.鱼,我所欲也;熊掌,亦我所欲也,二者不可得兼,舍鱼而取熊掌者也。生,亦我所欲也;义,亦我所欲也,二者不可得兼,舍生而取义者也。——《孟子·告子上·鱼我所欲也》&
3.故天将降大任于是人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为,所以动心忍性,曾益其所不能。——《孟子·告子下·生于忧患,死于安乐》&
4.夫战,勇气也,一鼓作气,再而衰,三而竭。——《左传·曹刿论战》&
5.吾妻之美我者,私我也;妾之美我者,畏我也;客之美我者,欲有求于我也。——《战国策·邹忌讽齐王纳谏》&
6.亲贤臣,远小人,此先汉所以兴隆也;亲小人,远贤臣,此后汉所以倾颓也。——诸葛亮《出师表》&
苟全性命于乱世,不求闻达于诸侯。——诸葛亮《出师表》&
7.阡陌交通,鸡犬相闻。——陶渊明《桃花源记》&
8.巴东三峡巫峡长,猿鸣三声泪沾裳。——郦道远《三峡》&
9.世有伯乐,然后有千里马。千里马常有,而伯乐不常有。——韩愈《马说》&
10.山不在高,有仙则名。水不在深,有龙则灵。——刘禹锡《陋室铭》&
11.青树翠蔓,蒙络摇缀,参差披拂。——柳宗元《小石潭记》&
12.先天下之忧而忧,后天下之乐而乐。——范仲淹《岳阳楼记》&
13.醉翁之意不在酒,在乎山水之间也。——欧阳修《醉翁亭记》&
14.予独爱莲之出淤泥而不染,濯清涟而不妖。——周敦颐《爱莲说》&
15.庭下如积水空明,水中藻荇交横,盖竹柏影也。——苏轼《记承天诗夜游》16.天大寒,砚冰坚,手指不可屈伸,弗之怠。——宋濂《送东阳马生序》
17.关关雎鸠,在河之洲。窈窕淑女,君子好逑。——《诗经·关雎》
18.蒹葭苍苍,白露为霜。所谓伊人,在水一方。——《诗经·蒹葭》19.日月之行,若出其中;星汉灿烂,若出其里。——曹操《观沧海》
20.采菊东篱下,悠然见南山。——陶渊明《饮酒》
21.海内存知己,天涯若比邻。——王勃《送杜少府之任蜀州》
22.海日生残夜,江春入旧年。——王湾《次北固山下》
23.大漠孤烟直,长河落日圆。——王维《使至塞上》
24.我寄愁心与明月,随风直到夜郎西。——李白《闻王昌龄左迁龙标遥有此寄》
25.长风破浪会有时,直挂云帆济沧海。——李白《行路难》
26.会当凌绝顶,一览众山小。——杜甫《望岳》
27.烽火连三月,家书抵万金。——杜甫《春望》
28.安得广厦千万间,大庇天下寒士俱欢颜,风雨不动安如山!——杜甫《茅屋为秋风所破歌》
29.忽如一夜春风来,千树万树梨花开。——岑参《白雪歌送武判官归京》
30.天街小雨润如酥,草色遥看近却无。——韩愈《早春呈水部张十八员外》
31.沉舟侧畔千帆过,病树前头万木春。——刘禹锡《酬乐天扬州初逢席上见赠》
32.足蒸暑土气,背灼炎天光。力尽不知热,但惜夏日长。——白居易《观刈麦》
念此私自愧,尽日不能忘。——白居易《观刈麦》
33.几处早莺争暖树,夜家新燕啄春泥。——白居易《钱塘湖春行》
34.黑云压城城欲摧,甲光向日金鳞开。——李贺《雁门太守行》
35.东风不与周郎便,铜雀春深锁二乔。——杜牧《赤壁》
36.商女不天亡国恨,隔江犹唱《后庭花》。——杜牧《泊秦淮》
37.何当共剪西窗烛,却话巴山夜雨时。——李商隐《夜雨寄北》
38.相见时难别亦难,东风无力百花残。春蚕到死丝方尽,蜡炬成灰泪始干。——李商隐《无题》
39.剪不断,理还乱,是离愁。别是一番滋味在心头。——李煜《相见欢·无言独上西楼》
40.人不寐,将军白发征夫泪。——范仲淹《渔家傲·塞下秋来风景异》
41.无可奈何花落去,似曾相识燕归来。——晏殊《浣溪沙·一曲新词酒一杯》
42.不畏浮云遮望眼,自缘身在最高层。——王安石《登飞来峰》
43.会挽雕弓如满月,西北望,射天狼。——苏轼《江城子·密州出猎》
44.人有悲欢离合,月有阴晴圆缺,此事古难全。但愿人长久,千里共婵娟。——苏轼《水调歌头·明月几时有》
45.山重水复疑无路,柳暗花明又一村。——陆游《游山西村》
46.了却君王天下事,赢得生前身后名。——辛弃疾《破阵子·为陈同甫赋壮词以寄之》
47.人生自古谁无死,留取丹心照汗青。——文天祥《过零丁洋》
48.枯藤老树昏鸦,小桥流水人家。——马致远《天净沙·秋思》
49.兴,百姓苦;亡,百姓苦!——张养浩《山坡羊·潼关怀古》
50.落红不是无情物,化作春泥更护花。——龚自珍《己亥杂诗》
发现相似题
与“名著阅读填空。(5分)武松乘着酒兴,走上冈子来,见一个败落的山神..”考查相似的试题有:
846749939949021639615240394057#!/usr/bin/perl
#┌─────────────────────────────────
#│ Aska BBS v3.5 ()
#│ Copyright (c) KentWeb
#│ webmaster@
#│ http://www./
#└─────────────────────────────────
$ver = 'ASKA BBS v3.5';
#┌─────────────────────────────────
#│ [注意事項]
#│ 1. このスクリプトはフリーソフトです。このスクリプトを使用した
いかなる損害に対して作者は一切の責任を負いません。
#│ 2. 設置に関する質問はサポート掲示板にお願いいたします。
直接メールによる質問は一切お受けいたしておりません。
#└─────────────────────────────────
# 【ファイル構成例】
public_html (ホームディレクトリ)
+-- aska / aska.cgi
askalog.cgi [606]
#-------------------------------------------------
■基本設定
#-------------------------------------------------
# ライブラリ取り込み
require './jcode.pl';
# タイトル名
$title = "亜 州 ご 意 見 箱";
# タイトル文字の色
$tCol = "#666666";
# タイトル文字サイズ
$tSize = '24px';
# 本文文字サイズ
$bSize = '13px';
# 本文文字スタイル
$bFace = '"MS UI Gothic", "MS Pゴシック", Osaka';
# 記事題名の色
$subCol = "#DD0000";
# スクリプトURL
$script = './aska.cgi';
# ログファイル
$logfile = './askalog.cgi';
# 管理用パスワード
$pass = '0123';
# 最大記事数(これを超える記事は古い順に削除)
$max = 100;
# 戻り先URL
$home = "../index.html";
# タイトル画像を使う場合 (http://から画像を指定)
$ImgT = "";
$ImgW = 300; # 横幅サイズ
$ImgH = 70; # 縦幅サイズ
# bodyタグ
$body = '';
# URLの自動リンク (0=no 1=yes)
$autolink = 1;
# 引用部色変更
1 : 色指定を行うと「引用部」を色変更します
2 : この機能を使用しない場合は何も記述しないで下さい ($refCol="";)
$refCol = "#804000";
# 1ページあたりの記事表示件数
$pageLog = 10;
# メール通知機能
0 : 通知しない
1 : 通知する → 自分の投稿記事も通知する
2 : 通知する → 自分の投稿記事は通知しない
$mailing = 0;
# sendmailのパス(メール通知する場合)
$sendmail = '/usr/sbin/sendmail';
# メール通知先アドレス(メール通知する場合)
$mailto = 'xxx@xxx.xxx';
# タグ広告挿入オプション
の代わりに「広告タグ」を挿入。
→ 広告タグ以外に、MIDIタグ や LimeCounter等のタグにも使用可能。
$banner1 = '';
# 表示部上部に挿入
$banner2 = '';
# 表示部下部に挿入
# 記事の更新は method=post に限定する場合(セキュリティ対策)
→ 0=no 1=yes
$postonly = 1;
# 他サイトから投稿排除時に指定する場合(セキュリティ対策)
→ 掲示板のURLをhttp://から書く
$baseUrl = '';
# 投稿制限(セキュリティ対策)
0 : しない
1 : 同一IPアドレスからの投稿間隔を制限する
2 : 全ての投稿間隔を制限する
$regCtl = 1;
# 制限投稿間隔(秒数)
→ $regCtl での投稿間隔
$wait = 60;
# 禁止ワード
# → 投稿時禁止するワードをコンマで区切る
$no_wd = '';
# 日本語チェック(投稿時日本語が含まれていなければ拒否する)
$jp_wd = 0;
# URL個数チェック
# → 投稿コメント中に含まれるURL個数の最大値
$urlnum = 3;
# 投稿後の処理
→ 掲示板自身のURLを記述しておくと、投稿後リロードします
→ ブラウザを再読み込みしても二重投稿されない措置。
→ Locationヘッダの使用可能なサーバのみ
$location = '';
# ホスト取得方法
# 0 : gethostbyaddr関数を使わない
# 1 : gethostbyaddr関数を使う
$gethostbyaddr = 0;
# アクセス制限(半角スペースで区切る、アスタリスク可)
→ 拒否ホスト名を記述(後方一致)【例】*.
$deny_host = '';
→ 拒否IPアドレスを記述(前方一致)【例】210.12.345.*
$deny_addr = '';
# 1回当りの最大投稿サイズ (bytes)
$maxData = 51200;
#-------------------------------------------------
■設定完了
#-------------------------------------------------
if ($mode eq 'regist') { & }
elsif ($mode eq 'find') { & }
elsif ($mode eq 'howto') { & }
elsif ($mode eq 'admin') { & }
elsif ($mode eq 'usrdel') { & }
elsif ($mode eq 'check') { & }
#-------------------------------------------------
アクセス制限
#-------------------------------------------------
sub axscheck {
# IP&ホスト取得
$host = $ENV{'REMOTE_HOST'};
$addr = $ENV{'REMOTE_ADDR'};
if ($gethostbyaddr && ($host eq "" || $host eq $addr)) {
$host = gethostbyaddr(pack("C4", split(/?./, $addr)), 2);
# IPチェック
local($flg);
foreach ( split(/?s+/, $deny_addr) ) {
s/?./???./g;
s/?*/?.?*/g;
if ($addr =? /^$_/i) { $flg = 1; }
if ($flg) {
&error("アクセスを許可されていません");
# ホストチェック
} elsif ($host) {
foreach ( split(/?s+/, $deny_host) ) {
s/?./???./g;
s/?*/?.?*/g;
if ($host =? /$_$/i) { $flg = 1; }
if ($flg) {
&error("アクセスを許可されていません");
if ($host eq "") { $host = $ }
#-------------------------------------------------
#-------------------------------------------------
sub html {
local($r_sub,$r_com);
# クッキー取得
local($cnam,$ceml,$curl,$cpwd) = &get_
if (!$curl) { $curl = 'http://'; }
# レス処理
$in{'res'} =? s/?D//g;
if ($in{'res'}) {
local($flag,$no,$dat,$nam,$eml,$sub,$com);
open(IN,"$logfile");
while () {
($no,$dat,$nam,$eml,$sub,$com) = split(//);
if ($in{'res'} == $no) { $flag = 1; }
close(IN);
if (!$flag) { &error("該当記事が見つかりません"); }
$sub =? s/^Re://g;
$sub =? s/?[?d+?]?s?//g;
$r_sub = "Re:[$no] $sub";
$r_com = "& $com";
$r_com =? s//?r& /
print "?n";
print "$banner1?n" if ($banner1 ne "");
# タイトル
if ($ImgT) {
print "?n";
print "$title?n";
print <<EOM;
メッセージ
(英数字で8文字以内)
クッキー情報保存
local($i) = 0;
open(IN,"$logfile") || &error("Open Error: $logfile");
while () {
next if ($i
$page + $pageLog);
local($no,$dat,$nam,$eml,$sub,$com,$url) = split(//);
if ($eml) { $nam = ""; }
if ($autolink) { &auto_link($com); }
if ($refCol) { $com =? s/([?>]|^)(&[^<]*)/$1$2/g; }
print "[$no] $sub?n";
print "投稿者:$nam 投稿日:$dat?n";
print "[]$com";
print "" if ($url);
print "?n";
close(IN);
print <<EOM;
# ページ繰り越し
local($next) = $page + $pageL
local($back) = $page - $pageL
if ($back >= 0) {
print "?n";
if ($next < $i) {
print "?n";
# 著作権表示(削除禁止)
print <<EOM;
#-------------------------------------------------
#-------------------------------------------------
sub regist {
# 投稿チェック
if ($postonly && !$post_flag) { &error("不正なアクセスです"); }
if ($baseUrl) { &refC }
# チェック
if ($no_wd) { &no_ }
if ($jp_wd) { &jp_ }
if ($urlnum > 0) { & }
# フォーム内容をチェック
local($err);
if ($in{'name'} eq "") { $err .= "名前が入力されていません"; }
if ($in{'comment'} eq "") { $err .= "コメントが入力されていません"; }
if ($in{'email'} && $in{'email'}!? /^[?w?.?-]+?@[?w?.?-]+?.[a-zA-Z]{2,6}$/) {
$err .= "Eメールの入力内容が不正です";
if ($err) { &error($err); }
if ($in{'url'} eq "http://") { $in{'url'} = ""; }
if ($in{'sub'} eq "") { $in{'sub'} = "無題"; }
# 先頭記事読み取り
local($top,$i,$flag,@data);
open(DAT,"+< $logfile") || &error("Open Error: $logfile");
eval 'flock(DAT, 2);';
# 重複投稿チェック
local($no,$dat,$nam,$eml,$sub,$com,$url,$hos,$pw,$tim) = split(//, $top);
if ($in{'name'} eq $nam && $in{'comment'} eq $com) {
close(DAT);
&error("二重投稿は禁止です");
# 連続投稿チェック
local($time) =
if ($regCtl == 1) {
if ($host eq $hos && $time - $tim < $wait) { $flag = 1; }
} elsif ($regCtl == 2) {
if ($time - $tim < $wait) { $flag = 1; }
if ($flag) {
close(DAT);
&error("現在投稿制限中です。もうしばらくたってから投稿をお願いします");
# 記事No採番
# 削除キー暗号化
local($pwd);
if ($in{'pwd'} ne "") { $pwd = &encrypt($in{'pwd'}); }
# 時間取得
local($min,$hour,$mday,$mon,$year,$wday) = (localtime($time))[1..6];
local(@wk) = ('Sun','Mon','Tue','Wed','Thu','Fri','Sat');
local($date) = sprintf("%04d/%02d/%02d(%s) %02d:%02d",
$year+1900,$mon+1,$mday,$wk[$wday],$hour,$min);
# 記事数調整
$data[0] = $
while () {
push(@data,$_);
last if ($i >= $max-1);
seek(DAT, 0, 0);
print DAT "$no$date$in{'name'}$in{'email'}$in{'sub'}$in{'comment'}$in{'url'}$host$pwd$time?n";
print DAT @
truncate(DAT, tell(DAT));
close(DAT);
# クッキーを記憶
if ($in{'cook'} eq 'on') {
&set_cookie($in{'name'},$in{'email'},$in{'url'},$in{'pwd'});
# メール通知処理
if ($mailing == 1 || ($mailing == 2 && $in{'email'} ne $mailto)) { &mail_ }
# リロード
if ($location) {
if ($ENV{'PERLXS'} eq "PerlIS") {
print "HTTP/1.0 302 Temporary Redirection?r?n";
print "Content-type: text/html?n";
print "Location: $location??n?n";
&message("投稿は正常に受理されました");
#-------------------------------------------------
ワード検索
#-------------------------------------------------
sub find {
print <<EOM;
キーワードを入力し、検索ボタンを押してください。
キーワードはスペースで区切って複数指定することができます。
キーワード
foreach ("AND", "OR") {
if ($in{'cond'} eq $_) {
print "$_?n";
print "$_?n";
print " 表?示 ?n";
foreach (10,15,20,25,30) {
if ($in{'view'} == $_) {
print "$_件?n";
print "$_件?n";
print <<EOM;
# ワード検索の実行と結果表示
if ($in{'word'} ne "") {
# 入力内容を整理
$in{'word'} =? s/?x81?x40/ /g;
local(@wd) = split(/?s+/, $in{'word'});
print "?n";
local($i) = 0;
local(@find);
open(IN,"$logfile") || &error("Open Error: $logfile");
while () {
local($no,$dat,$nam,$eml,$sub,$com,$url) = split(//);
$flag = 0;
foreach $wd (@wd) {
if (index("$no $nam $eml $sub $com $url",$wd) >= 0) {
$flag = 1;
if ($in{'cond'} eq 'OR') { }
if ($in{'cond'} eq 'AND') {
$flag = 0;
if ($flag) {
next if ($i
$page + $in{'view'});
push(@find,$_);
close(IN);
print "▽ $in{'word'} に関連する記事は$i件見つかりました。?n";
foreach (@find) {
local($no,$ymd,$nam,$eml,$sub,$com,$url) = split(//);
if ($eml) { $nam=""; }
if ($url) { $com .= ""; }
print "[$no] $sub ";
print "投稿者:$nam 投稿日:$ymd?n";
print "$com?n";
print "?n";
$next = $page + $in{'view'};
$back = $page - $in{'view'};
if ($back >= 0) {
print "?n";
if ($next < $i) {
print "?n";
print <<EOM;
#-------------------------------------------------
管理モード
#-------------------------------------------------
sub admin {
if ($in{'pass'} eq "") { & }
elsif ($in{'pass'} ne $pass) { &error("パスワードが違います"); }
# 削除処理
if ($in{'job'} eq "dele" && $in{'no'}) {
# 削除情報
local(@del) = split(/?0/, $in{'no'});
# 削除情報をマッチング
local(@data);
open(DAT,"+< $logfile") || &error("Open Error: $logfile");
eval 'flock(DAT, 2);';
while () {
local($no) = split(//);
local($flag);
foreach $del (@del) {
if ($no == $del) { $flag = 1; }
if (!$flag) { push(@data,$_); }
seek(DAT, 0, 0);
print DAT @
truncate(DAT, tell(DAT));
close(DAT);
# 修正画面
} elsif ($in{'job'} eq "edit" && $in{'no'}) {
if ($in{'no'} =? /?0/) {
&error("修正の場合選択する記事は1つのみです");
# 記事抽出
local($no,$dat,$nam,$eml,$sub,$com,$url);
open(IN,"$logfile") || &error("Open Error: $logfile");
while () {
($no,$dat,$nam,$eml,$sub,$com,$url) = split(//);
if ($in{'no'} == $no) { }
close(IN);
# 修正フォームへ
&edit_form($no,$dat,$nam,$eml,$sub,$com,$url);
# 修正実行
} elsif ($in{'job'} eq "edit2") {
if ($in{'url'} eq "http://") { $in{'url'} = ""; }
if ($in{'sub'} eq "") { $in{'sub'} = "無題"; }
# 読み出し
local(@data);
open(DAT,"+< $logfile") || &error("Open Error: $logfile");
eval 'flock(DAT, 2);';
while () {
local($no,$dat,$nam,$eml,$sub,$com,$url,$hos,$pwd,$tim) = split(//);
if ($in{'no'} == $no) {
$_ = "$no$dat$in{'name'}$in{'email'}$in{'sub'}$in{'comment'}$in{'url'}$hos$pwd$tim?n";
push(@data,$_);
seek(DAT, 0, 0);
print DAT @
truncate(DAT, tell(DAT));
close(DAT);
# 完了メッセージ
&message("記事を修正しました");
# 削除画面を表示
print <<EOM;
処理を選択して送信ボタンを押してください。
# 記事を展開
open(IN,"$logfile") || &error("Open Error: $logfile");
while () {
local($no,$dat,$nam,$eml,$sub,$com,$url,$hos) = split(//);
if ($eml) { $nam=""; }
$com =? s/]*(>|$)//g;
if (length($com) > 60) {
$com = substr($com,0,60) . '...';
print "[$no] $sub ";
print "$nam - $dat 【$hos】?n";
print "$com?n";
close(IN);
print <<EOM;
#-------------------------------------------------
修正フォーム
#-------------------------------------------------
sub edit_form {
$com =? s//?n/g;
if (!$url) { $url = "http://"; }
print <<EOM;
変更する部分のみ修正して送信ボタンを押してください。
メッセージ
#-------------------------------------------------
#-------------------------------------------------
sub howto {
print <<EOM;
この掲示板はクッキー対応です。一度記事を投稿いただくと、おなまえ、Eメール、URL、削除キーの情報は2回目以降は自動入力されます。(ただし利用者のブラウザがクッキー対応の場合)
投稿記事には、タグは一切使用できません。
記事を投稿する上での必須入力項目は「おなまえ」と「メッセージ」です。Eメール、URL、題名、削除キーは任意です。
記事には、半角カナは一切使用しないで下さい。文字化けの原因となります。
記事の投稿時に「削除キー」にパスワード(英数字で8文字以内)を入れておくと、その記事は次回削除キーによって削除することができます。
記事の保持件数は最大$max件です。それを超えると古い順に自動削除されます。
既存の記事に簡単に「返信」することができます。各記事にある「返信」のリンク部を押すと投稿フォームが返信用となります。
過去の投稿記事から「キーワード」によって簡易検索ができます。トップメニューののリンクをクリックすると検索モードとなります。
管理者が著しく不利益と判断する記事や他人を誹謗中傷する記事は予?告なく削除することがあります。
#-------------------------------------------------
ユーザ記事削除
#-------------------------------------------------
sub usrdel {
# 投稿チェック
if ($postonly && !$post_flag) { &error("不正なアクセスです"); }
if ($baseUrl) { &refC }
if ($in{'no'} eq '' || $in{'pwd'} eq '') {
&error("削除Noまたは削除キーが入力モレです");
local($flag,$match,@data);
eval 'flock(DAT, 2);';
open(DAT,"+< $logfile") || &error("Open Error: $logfile");
while () {
local($no,$dat,$nam,$eml,$sub,$com,$url,$hos,$pw) = split(//);
if ($in{'no'} == $no) {
$flag = 1;
if (!$pw) { $flag = 2; }
$match = &decrypt($in{'pwd'}, $pw);
push(@data,$_);
if ($flag == 2) { &error("削除キーが設定されていません"); }
elsif (!$flag) { &error("該当記事が見当たりません"); }
elsif ($match != 1) { &error("削除キーが違います"); }
# ログを更新
seek(DAT, 0, 0);
print DAT @
truncate(DAT, tell(DAT));
close(DAT);
# 完了メッセージ
&message("記事を削除しました");
#-------------------------------------------------
フォームデコード
#-------------------------------------------------
sub decode {
local($buf);
if ($ENV{'REQUEST_METHOD'} eq "POST") {
$post_flag = 1;
if ($ENV{'CONTENT_LENGTH'} > $maxData) {
&error("投稿量が大きすぎます");
read(STDIN, $buf, $ENV{'CONTENT_LENGTH'});
$post_flag = 0;
$buf = $ENV{'QUERY_STRING'};
undef(%in); $page = 0;
foreach ( split(/&/, $buf) ) {
local($key, $val) = split(/=/);
$val =? tr/+/ /;
$val =? s/%([a-fA-F0-9][a-fA-F0-9])/pack("H2", $1)/
# S-JISコード変換
&jcode'convert(*val, "sjis", "", "z");
# エスケープ
$val =? s/&/&/g;
$val =? s/"/&/g;
$val =? s//&/g;
$val =? s/?r?n//g;
$val =? s/?r//g;
$val =? s/?n//g;
# ページ繰り越し
if ($key =? /^page(?d+)$/) {
$page = $1;
$in{$key} .= "?0" if (defined($in{$key}));
$in{$key} .= $
$mode = $in{'mode'};
# タイムゾーン設定
$ENV{'TZ'} = "JST-9";
$headflag = 0;
#-------------------------------------------------
HTMLヘッダ
#-------------------------------------------------
sub header {
if ($headflag) { }
print "Content-type: text/html?n?n";
print <<"EOM";
$headflag = 1;
#-------------------------------------------------
エラー処理
#-------------------------------------------------
sub error {
print <<EOM;
#-------------------------------------------------
クッキー発行
#-------------------------------------------------
sub set_cookie {
local(@cook) = @_;
local($gmt, $cook, @t, @m, @w);
@t = gmtime(time + 60*24*60*60);
@m = ('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
@w = ('Sun','Mon','Tue','Wed','Thu','Fri','Sat');
# 国際標準時を定義
$gmt = sprintf("%s, %02d-%s-%04d %02d:%02d:%02d GMT",
$w[$t[6]], $t[3], $m[$t[4]], $t[5]+1900, $t[2], $t[1], $t[0]);
# URLエンコード
foreach (@cook) {
s/(?W)/sprintf("%%%02X", unpack("C", $1))/
$cook .= "$_";
print "Set-Cookie: ASKA_BBS=$ expires=$gmt?n";
#-------------------------------------------------
クッキー取得
#-------------------------------------------------
sub get_cookie {
local($key, $val, *cook);
# クッキーを取得
$cook = $ENV{'HTTP_COOKIE'};
# 該当IDを取り出す
foreach ( split(/;/, $cook) ) {
($key, $val) = split(/=/);
$key =? s/?s//g;
$cook{$key} = $
# データをURLデコードして復元
foreach ( split(//, $cook{'ASKA_BBS'}) ) {
s/%([0-9A-Fa-f][0-9A-Fa-f])/pack("H2", $1)/
push(@cook,$_);
return (@cook);
#-------------------------------------------------
#-------------------------------------------------
sub encrypt {
local($in) = @_;
local($salt, $enc, @s);
@s = ('a'..'z', 'A'..'Z', '0'..'9', '.', '/');
$salt = $s[int(rand(@s))] . $s[int(rand(@s))];
$enc = crypt($in, $salt) || crypt ($in, '$1$' . $salt);
#-------------------------------------------------
#-------------------------------------------------
sub decrypt {
local($in, $dec) = @_;
local($salt) = $dec =? /^?$1?$(.*)?$/ && $1 || substr($dec, 0, 2);
if (crypt($in, $salt) eq $dec || crypt($in, '$1$' . $salt) eq $dec) {
return (1);
return (0);
#-------------------------------------------------
メール送信
#-------------------------------------------------
sub mail_to {
local($msub,$mbody,$mcom,$email);
# メールタイトルを定義
$msub = "[$title : $no] $in{'sub'}";
# 本文の改行?タグを復元
$mcom = $in{'comment'};
$mcom =? s//?n/g;
$mcom =? s/&/</g;
$mcom =? s/&/>/g;
$mcom =? s/&/”/g;
$mcom =? s/&/&/g;
$mbody = "$titleに以下の投稿がありました。?n?n";
$mbody .= "Date : $date?n";
$mbody .= "Host : $host?n";
$mbody .= "Agent: $ENV{'HTTP_USER_AGENT'}?n?n";
$mbody .= "名前 : $in{'name'}?n";
$mbody .= "email: $in{'email'}?n";
$mbody .= "題名 : $in{'sub'}?n";
$mbody .= "参照 : $in{'url'}?n" if ($in{'url'});
$mbody .= "?n$mcom?n";
# 題名をBASE64化
$msub = &base64($msub);
# メールアドレスがない場合は管理者アドレスに置き換え
if ($in{'email'} eq "") { $email = $ }
else { $email = $in{'email'}; }
# sendmail送信
open(MAIL,"| $sendmail -t -i") || &error("メール送信失敗");
print MAIL "To: $mailto?n";
print MAIL "From: $email?n";
print MAIL "Subject: $msub?n";
print MAIL "MIME-Version: 1.0?n";
print MAIL "Content-type: text/ charset=iso-2022-jp?n";
print MAIL "Content-Transfer-Encoding: 7bit?n";
print MAIL "X-Mailer: $ver?n?n";
foreach ( split(/?n/, $mbody) ) {
&jcode'convert(*_, 'jis', 'sjis');
print MAIL $_, "?n";
close(MAIL);
#-------------------------------------------------
自動リンク
#-------------------------------------------------
sub auto_link {
$_[0] =? s/([^=^?"]|^)(https??:[?w?.???-?/???&?=?@?;?#?:?%]+)/$1$2/g;
#-------------------------------------------------
REFチェック
#-------------------------------------------------
sub refCheck {
local($ref) = $ENV{'HTTP_REFERER'};
$ref =? s/%([a-fA-F0-9][a-fA-F0-9])/pack("H2", $1)/
$baseUrl =? s/(?W)/??$1/g;
if ($ref && $ref !? /$baseUrl/i) { &error("不正なアクセスです"); }
#-------------------------------------------------
BASE64変換
#-------------------------------------------------
# とほほのWWW入門で公開されているルーチンを参考にしました。
# http://tohoho.wakusei.ne.jp/
sub base64 {
local($sub) = @_;
&jcode'convert(*sub, 'jis', 'sjis');
$sub =? s/?x1b?x28?x42/?x1b?x28?x4a/g;
$sub = "=?iso-2022-jp?B?" . &b64enc($sub) . "?=";
sub b64enc {
local($ch)="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz+/";
local($x, $y, $z, $i);
$x = unpack("B*", $_[0]);
for ($i=0; $y=substr($x,$i,6); $i+=6) {
$z .= substr($ch, ord(pack("B*", "00" . $y)), 1);
if (length($y) == 2) {
$z .= "==";
} elsif (length($y) == 4) {
$z .= "=";
#-------------------------------------------------
#-------------------------------------------------
sub enter {
print <<EOM;
パスワードを入力して下さい
#-------------------------------------------------
メッセージ表示
#-------------------------------------------------
sub message {
print <<EOM;
if ($in{'pass'} ne "") {
print "?n";
print "?n";
print <<EOM;
#-------------------------------------------------
禁止ワードチェック
#-------------------------------------------------
sub no_wd {
local($flg);
foreach ( split(/,/, $no_wd) ) {
if (index("$in{'name'} $in{'sub'} $in{'comment'}",$_) >= 0) {
if ($flg) { &error("禁止ワードが含まれています"); }
#-------------------------------------------------
日本語チェック
#-------------------------------------------------
sub jp_wd {
local($sub, $com, $mat1, $mat2, $code1, $code2);
$sub = $in{'sub'};
$com = $in{'comment'};
if ($sub) {
($mat1, $code1) = &jcode'getcode(*sub);
($mat2, $code2) = &jcode'getcode(*com);
if ($code1 ne 'sjis' && $code2 ne 'sjis') {
&error("題名又はコメントに日本語が含まれていません");
#-------------------------------------------------
URL個数チェック
#-------------------------------------------------
sub urlnum {
local($com) = $in{'comment'};
local($num) = ($com =? s|(https?://)|$1|ig);
if ($num > $urlnum) {
&error("コメント中のURLアドレスは最大$urlnum個までです");
#-------------------------------------------------
チェックモード
#-------------------------------------------------
sub check {
print <<EOM;
Check Mode
# ログファイル
if (-e $logfile) {
print "LOGパス:OK?n";
if (-r $logfile && -w $logfile) {
print "LOGパーミッション:OK?n";
print "LOGパーミッションが不正です。?n";
print "LOGのパスが不正です:NG → $logfile?n";
print <<EOM;

我要回帖

更多关于 什么的山峰填空 的文章

 

随机推荐