version 1.82, 2003/01/12 10:01:00
|
version 1.86, 2003/01/27 13:04:25
|
Line 160 print "timee0=".time.br if $debug;
|
Line 160 print "timee0=".time.br if $debug;
|
sub printform |
sub printform |
{ |
{ |
|
|
my $submit=submit(-value=>'Поиск'); |
my $qnumber=(" "x10)."Выводить по ". textfield(-name=>'kvo', |
my $inputstring=textfield(-name=>'sstr', |
|
-default=>param('sstr')||'', |
|
-size=>30, |
|
-maxlength=>50); |
|
my $qnumber="Выводить по".br. textfield(-name=>'kvo', |
|
-default=>param('kvo')||'150', |
-default=>param('kvo')||'150', |
-size=>3, |
-size=>3, |
-maxlength=>5). br."вопросов"; |
-maxlength=>5)." вопросов"; |
|
my $sstr=param('sstr'); |
my @df=keys %searchin; |
my @df=keys %searchin; |
|
my %checked; |
@df=('Question', 'Answer') unless @df; |
@df=('Question', 'Answer') unless @df; |
|
$checked{lc $_}="checked" foreach @df; |
my $fields=checkbox_group('searchin',['Question','Answer','Comments','Authors','Sources'], [@df], |
my $fields=checkbox_group('searchin',['Question','Answer','Comments','Authors','Sources'], [@df], |
'false',\%rusfieldname); |
'false',\%rusfieldname); |
@df=param('type'); |
@df=param('type'); |
@df=('chgk','brain','igp','game','ehruditka','beskrylka') unless @df; |
@df=('chgk','brain','igp','game','ehruditka','beskrylka') unless @df; |
|
$checked{lc $_}="checked" foreach @df; |
my $types=checkbox_group('type',['chgk','brain','igp','game','ehruditka','beskrylka'], [@df], |
$checked{'all'}=param('all')?"checked":""; |
'false',\%rusfieldname); |
$checked{'any'}=param('all')?"":"checked"; |
my $metod=radio_group(-name=>'metod',-values=>['old','rus'], |
$checked{lc param('metod')}="checked"; |
-default=>(param('metod')||'rus'), |
$checked{'russian'}=1 unless $checked{'russian'} || $checked{'old'}; |
-labels=>\%rusfieldname); |
|
my $all=radio_group(-name=>'all',-values=>['yes','no'], |
|
-default=>(param('all')||'no'), |
|
-labels=>{'yes'=>'Все','no'=>'Любое'}); |
|
|
|
################################################# |
################################################# |
return start_form(-method=>'get', |
return |
-action=>url, |
<<EOT |
-enctype=> |
<form method="get" enctype="application/x-www-form-urlencoded" |
"application/x-www-form-urlencoded" |
action="/znatoki/cgi-bin/db.cgi"> |
).br. |
<h2>Поиск в базе данных</h2> |
table(Tr |
|
( |
<input type="text" name="sstr" value=$sstr size="30" maxlength="50"> |
td({-valign=>'TOP'},$inputstring.$submit.p."Метод: $metod".p."Слова: $all"), |
<input type="submit" value="Поиск"> $qnumber |
td({-valign=>'TOP'},(' 'x 8).'Поля:'), |
<p> |
td({-valign=>'TOP'},$fields), |
|
td({-valign=>'TOP'},(' 'x 1).'Типы:'), |
<table border="1" cellpadding=4 cellspacing=0> |
td({-valign=>'TOP'},$types), td(" "x5), |
<tr> |
td({-valign=>'TOP'},$qnumber) |
<th align="left" rowspan=3 width="20%"> Вариант поиска: |
) |
</td><td rowspan=2 colspan=2> |
) |
<input type="radio" $checked{'old'} name="metod" value="old"> Простой (старый) |
|
</td><td> |
#$fields. |
<input type="checkbox" $checked{'chgk'} name="type" value="chgk"> "Что? Где? Когда?" |
#$inputstring.$submit.br.$metod.$all |
</td><td><nobr> |
|
<input type="checkbox" $checked{'brain'} name="type" value="brain"> "Брейн-Ринг"</nobr> |
|
</td><td> |
|
<input type="checkbox" $checked{'igp'} name="type" value="igp"> "Интернет" |
|
</td> |
|
</tr><tr> |
|
<td> |
|
<input type="checkbox" $checked{'game'} name="type" value="game"> "Своя игра" |
|
</td><td> |
|
<input type="checkbox" $checked{'ehruditka'} name="type" value="ehruditka"> "Эрудитка" |
|
</td><td> |
|
<input type="checkbox" $checked{'beskrylka'} name="type" value="beskrylka"> "Бескрылка" |
|
</td> |
|
</tr><tr> |
|
<td colspan=5><input type="radio" $checked{'russian'} name="metod" value="rus"> Расширенный (с учетом грамматики, в вопросах всех типов) |
|
</td> |
|
</tr><tr> |
|
<th align="left">Искать: |
|
</td><td colspan=2> |
|
<input type="radio" $checked{'all'} name="all" value="yes">Все слова |
|
</td><td colspan=3> |
|
<input type="radio" $checked{'any'} name="all" value="no">Любое слово |
|
</td> |
|
</tr><tr> |
|
<th align="left">Поля для поиска: |
|
</td><td width="15%"> |
|
<input type="checkbox" name="searchin" value="Question" $checked{'question'}>Вопрос |
|
</td><td width="15%"> |
|
<input type="checkbox" name="searchin" value="Answer" $checked{'answer'}>Ответ<br> |
|
</td><td width="15%"> |
|
<input type="checkbox" name="searchin" value="Comments" $checked{'comments'}>Комментарии<br> |
|
</td><td width="15%"> |
|
<input type="checkbox" name="searchin" value="Authors" $checked{'authors'}>Автор<br> |
|
</td><td width="15%"> |
|
<input type="checkbox" name="searchin" value="Sources" $checked{'sources'}>Источник<br> |
|
</td> |
|
</tr> |
|
</table> |
|
</center> |
|
|
|
EOT |
.endform |
.endform |
.hr |
.hr |
|
|
Line 688 sub PrintList {
|
Line 721 sub PrintList {
|
sub PrintSearch { |
sub PrintSearch { |
my ($dbh, $sstr, $metod,$was) = @_; |
my ($dbh, $sstr, $metod,$was) = @_; |
my $t=time; |
my $t=time; |
print h2("Поиск в базе вопросов"); |
# print h2("Поиск в базе вопросов"); |
print printform; |
print printform; |
my @allnf; |
my @allnf; |
my @Questions; |
my @Questions; |
Line 1169 EOTT
|
Line 1202 EOTT
|
$output .= &PrintField("Комментарии", $Question{'Comments'}, $text); |
$output .= &PrintField("Комментарии", $Question{'Comments'}, $text); |
} |
} |
|
|
$output=~s/\(pic: ([^\)]*)\)/<img src="\/images\/$1">/g; |
|
|
|
$output.="</span>" |
$output.="</span>" |
|
|
} |
} |
|
$output=~s/\(pic: ([^\)]*)\)/<p><img src="\/znatoki\/images\/db\/$1"><p>/g unless $text; |
$output.=br.a({href=> url."?metod=proxy&qid=$Id"}, 'Близкие вопросы').p |
$output.=br.a({href=> url."?metod=proxy&qid=$Id"}, 'Близкие вопросы').p |
if $answer>0 && !$text; |
if $answer>0 && !$text; |
return $output; |
return $output; |
Line 1586 MAIN:
|
Line 1620 MAIN:
|
setlocale(LC_CTYPE,'russian'); |
setlocale(LC_CTYPE,'russian'); |
my($i, $tour); |
my($i, $tour); |
my($text) = (param('text')) ? 1 : 0; |
my($text) = (param('text')) ? 1 : 0; |
|
if ($text) { |
|
print header('text/plain'); |
|
} else {print header;} |
|
|
|
|
my($dbh) = DBI->connect("DBI:mysql:chgk", "piataev", "") |
my($dbh) = DBI->connect("DBI:mysql:chgk", "piataev", "") |
or do { |
or do { |
Line 1596 MAIN:
|
Line 1634 MAIN:
|
die "Can't connect to DB chgk\n"; |
die "Can't connect to DB chgk\n"; |
}; |
}; |
if (!param('comp') and !param('sqldump') and !$text) { |
if (!param('comp') and !param('sqldump') and !$text) { |
print header; |
|
print start_html(-"title"=>'Database of the questions', |
print start_html(-"title"=>'Database of the questions', |
-author=>'dimrub@icomverse.com', |
-author=>'dimrub@icomverse.com', |
-bgcolor=>'#fff0e0', |
-bgcolor=>'#fff0e0', |
-vlink=>'#800020'); |
-vlink=>'#800020'); |
|
print "<style> |
|
td {font-size: x-small; font-family : sans-serif} |
|
th {font-size: x-small; font-family : sans-serif} |
|
</style>\n"; |
|
|
print &Include_virtual("../dimrub/db/reklama.html"); |
print &Include_virtual("../dimrub/db/reklama.html"); |
} |
} |
|
|
Line 1615 POSIX::setlocale( &POSIX::LC_ALL, $thisl
|
Line 1657 POSIX::setlocale( &POSIX::LC_ALL, $thisl
|
if ((uc 'а') ne 'А') {print "Koi8-r locale not installed!\n"}; |
if ((uc 'а') ne 'А') {print "Koi8-r locale not installed!\n"}; |
|
|
|
|
if ($text) { |
|
print header('text/plain'); |
|
} |
|
|
|
if (param('hideequal')) { |
if (param('hideequal')) { |
my ($sth)= $dbh -> prepare("select first, second FROM equalto"); |
my ($sth)= $dbh -> prepare("select first, second FROM equalto"); |
$sth -> execute; |
$sth -> execute; |