use strict; use OLE; use locale; use POSIX qw (locale_h); setlocale(LC_CTYPE, "Russian_Russia.1251"); my($data,$str,$name,$val,%form,$c_id); my($Conn,$sql,$RS,$Errors,$error,$sql_,$RS_,$sql_1,$RS_1); my(%Rubr,@keys_rubr); print "Last-Modified: Wed 20 Jul 2004 GMT\n"; print "Content-type:text/html\nExpires: 0\n\n"; # С этим "глюк"! #print "Content-type:text/html\ncharset=windows-1251\n\n"; print qq~ Национальная Торговая площадка ~; #goto TEND; read(STDIN,$data,$ENV{'CONTENT_LENGTH'}); $data=$ENV{'QUERY_STRING'} if $data eq ""; if($data=~/\%../) { $data=~s/%(..)/pack("c",hex($1))/ge; } $data=~tr/+/ /; $data=~s/\'//g; my @strings=split(/&/,$data); foreach $str (@strings) { # print $str,"
"; ($name,$val)=split(/=/,$str); $form{$name}=$val; } $Conn = Win32::OLE->new("ADODB.Connection"); # РАБОТА С \\BIL #$Conn->Open("DSN=sqr_BIL;UID=sa;PWD=DE1104RS45"); $Conn->Open("DSN=tp_BIT;UID=outs;PWD=fylh.irf"); &get_id_date; $c_id=crypt($c_id,('.', '/', 0..9, 'A'..'Z', 'a'..'z')[rand 64, rand 64]); print qq~
Национальная торговая площадка

При заказе по всей представленной номенклатуре Вы
гарантированно получаете скидки от производителей и основных поставщиков.
400 000 коммерческих предложений мирового рынка на одном диске
Произвольный поиск по площадке:     Посмотреть корзину  Описание  Подсказка 
искать марку товара  искать рубрику"; } else { print $c_id."\">"; } print qq~
[ Ваши товары на нашей площадке ]  [ Корзина | Описание | Подсказка ]

По Вашим просьбам добавлен быстрый переход к списку имеющихся на площадке товаров
"; } else { print $c_id."\">"; } print qq~

Разделы торговой площадки "; print qq~
~; my $t; $sql="select Code,NameR from ok where Code like '[1-9][1-9]0000[1-9]' or code like '[1-9]0000[1-9]' or code=3400000 or code like '_0000_' or code=4000004 order by namer"; $RS=$Conn->Execute($sql); while(!$RS->EOF) { $t=$RS->Fields('NameR')->value; $t=lc $t; $t=ucfirst $t; $Rubr{$RS->Fields('Code')->value}=$t; push @keys_rubr,$RS->Fields('Code')->value; $RS->MoveNext(); } $RS->Close; my($s,%Count,$tt,$tt1); foreach $s (@keys_rubr) { if($s=~/^(\d\d)\d{5}$/) { $tt="${1}00000"; $tt1=($1+1)."00000"; } elsif($s=~/^(\d)\d{5}$/) { $tt="${1}00000"; $tt1=($1+1)."00000"; } $sql="SELECT count(Code) FROM GoodsServices WHERE OK>=$tt AND OK<$tt1"; # LIKE '${1}%' $RS=$Conn->Execute($sql); if(!$RS->EOF) { $Count{$s}=$RS->Fields(0)->value; } $RS->Close; } $Conn->Close; $Conn->{Nothing}; my($i,$n); $n=int($#keys_rubr/2); $n+=1 if ($#keys_rubr-$n*2)>0; for($i=0;$i<=$n;$i++) { print ""; print ""; print ""; } print "
  $Rubr{$keys_rubr[$i]} ($Count{$keys_rubr[$i]})
"; for($i=$n+1;$i<=$#keys_rubr;$i++) { print ""; print ""; print ""; } print "
  $Rubr{$keys_rubr[$i]} ($Count{$keys_rubr[$i]})
Ваши товары на нашей площадке | Корзина | Описание торговой площадки | Подсказка

Пишите: guide\@rsoft.ru" Информационная поддержка и дизайн © RSoft, Ltd.


; ~; #$Conn->Close; #TEND: #print '





15 февраля сайт временно недоступен в связи с обновлением технической базы.
Извините.'; ################# sub get_id_date { my($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst,@months,$yy); ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); @months = ("01","02","03","04","05","06","07","08","09","10","11","12"); $c_id = "$sec$min$hour$mday$mon$year"; } # END sub get_date #############