LINUX.ORG.RU

Сообщения hose

 

perl, Apache::Session::Mysql, 3d array

Форум — Web-development

# $celval - массив содержащий данные о товаре
# проверка на существование этого товара в базе
my $id = CheckForExists($celval[1]);

# или добавить или обновить
if( !defined($id))
{
    $_session[0][$insr++] = [ @celval ];
}
else
{
    $_session[1][$chng++] = [ @celval ];
}

при переходе на другую страницу не могу побратиться к дотим
$_session[0][0][1] (т.е. он undef)

если передаю что-то простое типа
$_session{user_name} = "vasya";

то все работает, т.е. сеансы подключил правельно ....

кто-нибудь знает как можно обойти такую проблемму ?

ps если что попробую mysql replace вместо update или insert 
pss что0то я сегодня запарился ((((


hose
()

perl, локальные глоб переменные

Форум — Web-development

 #я так понял это объявление глоб перем ?
 use vars qw($y, $x, $sheet);  
 use vars qw(@dropcat,@ignorewords);
        
 (@dropcat,@ignorewords) =(GetDropCats(), GetIgnoreWords() );
        
 openXls ();
      
 readXls ();

sub openXls
{
    ....   
    my $oExcel = new Spreadsheet::ParseExcel;    
    my $oBook = $oExcel->Parse($q->param('xls'));
    $sheet = $oBook->{Worksheet}[0];
    
    # вроде как sheet равен 0, хотя ображение 
    # $cellvalue = $sheet ->{Cells}[$x][$y]->Value;   
    # работает, как так ?
    print 'sheet='.$sheet.'<br />'; 
}

sub readXls
{

 #  тоже 0 
    print $sheet.'<br />';
    @_session = ( [], [] );
    
    while( условие )
      readCell(__LINE__);
...
}


скрипт работает, но почему $sheet = 0 ?
если просто зделать 
my $sheet1 = $oBook->{Worksheet}[0];
print $sheet1  - выводит hash(xxx)

почему тогда там ноль ???
не могу уснуть !!! ((((
hose
()

perl, cp1251, utf8

Форум — Web-development

пишу парсирование xls->mysql 
есть строка гарантия товара вида 2 месяца, 3 года, или пустая строчка - нет гарантии 

sub NormalizateGuarantee
{
  
  my $guar = shift;
  my $value = '';
  
  # убираем пробелы 
  $guar =~ s/\s//g;
  $guar =~ s/-//g;

  # пустая строка - выходим
  return 0 if($guar qw "");
  
  for($i = 0; $i < length($guar); $i++)
  {
    if(substr($guar, $i, 1) eq 'г' || 
        substr($guar, $i, 1) eq 'л')
    {
        $value *= 12; 
    }
    else
    {
        $value .= substr($guar, $i, 1);
    }  
 
  }
  
  
  return $value;
  
}

но тут возникает вопрос как избавиться от зависимости кодировки ввода русских букв в коде т.е. г,л ?
почему спрашиваю - просто не уверен что на сервере заработает
да согласен всегда можно залезть и исправить
просто хочу узнать правельное решение ))

псб . )
hose
()

perl + трехмерный массив

Форум — Web-development

ммм
хочу посторить такой массив

elem[0]{'id'} = ...
elem[0]{'name'} = ...
...
elem[3]{'name'} = ...
...

и что-то на перле у меня это не выходит :((((

[cgi-bin]# cat arratest.pl

#!/usr/bin/perl -w
#
#use strict;

print "\n";
my @a = (1, 3 ,4 ,5 ,6 ,7);

my @elem = ();
my $i = 0;
foreach my $aa (@a)
{
    $elem[$i] = ();
    $elem[$i]{'id'} = $aa;
    $elem[$i]{'name'} = $i;
    $i++;
}

[cgi-bin]#    

и еще, 
$dbh = DBI::connect(...)

постоянно ругаеться при включенном strict
как правельно объявлять глоб переменные ????

                         
hose
()

perl + использование post,get одновременно

Форум — Web-development

често то я пишу 1,2 скрипт на перле
не могу понять, использую одновреммено post + get
не вижу get переменных, это специфика перл ??

[cgi-bin]# cat elem_demo.pl
#! /usr/bin/perl -w
#

#use strict;
use CGI qw/:standart escapeHTML escape/;

$q = new CGI;

print $q->header(),
$q->start_html( -title => 'демонстрация элементов формы',
-bgcolor => 'white');

my $sticky = defined ($q->param('sticky'));

## объвление полей
print $q->start_multipart_form( -action => $q->escape($q->url().'?get=true;')),
$q->hidden (-name => 'hidden field',
-value => 'hidden value',
-override => !$sticky),
$q->p ('Text field: '),
$q->textfield (-name => 'text field',
-override => !$sticky),
$q->p('Password field: '),
$q->password_field(-name => 'password field',
-override => !$sticky),
$q->p('text area: '),
$q->textarea (-name => 'text area',
-rows => 3,
-cols => 60,
-wrap => "virtual",
-override => !$sticky),
$q->p('file load field: '),
$q->filefield (-name => 'file field', -size => 60),
$q->p('self opened menu: '),
$q->popup_menu (-name => 'popup menu',
-values => ['a', 'b', 'c', 'd', 'e'],
-labels => {
'a' => 'element a',
'b' => 'element b',
'c' => 'element c',
'd' => 'element d',
'e' => 'element e'
},
-override => !$sticky),
$q->p('list prokrytki whith choise propoties ;( '),
$q->scrolling_list (-name => 'scrolling list single',
-values => ['a', 'b', 'c', 'd', 'e'],
-labels => {
'a' => 'Element A',
'b' => 'Element B',
'c' => 'Eleemnt C',
'd' => 'Element D',
'e' => 'Element E',
},
-override => !$sticky),
$q->br (), $q-> br(),
$q->checkbox( -name => 'sricky',
-label => 'Special field list'),
$q->br (), $q-> br(),
$q->submit (-name => 'choise',
-value => 'send'),
$q->reset('reset form'),
$q->end_form();

## конец формы

my @names = $q->param();

if( !@names )
{
$q->p('элеметны отцуцтвуют');
}
else
{
my @item = ();
foreach my $name (@names)
{
my @val = $q->param($name);
$val[0] = '[' . join(', ', @val) .']' if @val > 1;
push (@item, $q->escapeHTML ("$name: ($val[0])\n"));
}

print $q->ul ($q->li (\@item));

}

print $q->hr();

# создаю ссылку
print $q->a( {-href => $q->escape($q->url().'?get=true;')}, ' link ');


[cgi-bin]#

перехожу по <a href> - вижу метож get
перехожу по submit - не вижу get
(прошу заметить что форма создана с методом get
print $q->start_multipart_form( -action => $q->escape($q->url().'?get=true;'))
если возможность "увидеть" ?

помогите плз...

hose
()

сайт не запускается на хостере

Форум — Web-development

дома все работает на ура !!!
у хостера стоит:
Apache/2.2.3 (Debian) mod_python/3.2.10 Python/2.4.4 PHP/5.2.0-8+etch7 mod_perl/2.0.2 Perl/v5.8.8 Server at lan.funs.net.ua Port 80

сайт просто доходи до определенного момента, и останавливает работу
(error_reporting вообще убран, но повторяю дома все работает!!)

нашел в чем проблемма:

public static function SetCategory()
{
echo 'setcat before<br>';
if(!isset($_SESSION['user']) ||
!isset($_SESSION['user']['curr_category']))
{
echo 'setcat in<br>';
$cat = SubFunction::GetCategories();
$_SESSION['user'] = array();
$_SESSION['user']['curr_category'] = $cat['0']['id'];
}
echo 'setcat after<br>';
}

загрузка сайт прерывается при заходи в эту ф-ции
печатает только
setcat before
такое подозрение что сайт останавливает работу при любом обращении к массиву SESSION
что это может быть ?
хостер отказывается помогать на отрез ((((((

ps спасибо за ответы


hose
()

amarok, никак не пойму одно из двух, зачем его придумали или как его использовать =)

Форум — General

вообщем такая проблемма, amarok упорно не хочешь проигрывать .mp3 файлы, всегда пишет что данный файл не может быть воспроизведен, идите в опу (ну именно вот так не всегда =) ) наверное где-то из 2000 mp3 проигрывает только одину, которую я уже задолбался слушать (( я бы не мучился и оставался на xmms, но все же упорство и труд команнды разработчиков из amarok заслуживают уважения.

вообщем остановимся на деталях - амарок не проигрывает mp3 файлы (в колекцию вроде как добавил, базу создал и т.п.) пишет что данный файл не может быть воспроизведен, хотя в xmms все работает на ура. Посоветуйте, может я еще какую-нить библиотку забыл не выкачал для этого мега плеера ?

hose
()

udev, когда нужно стартовать

Форум — General

такая проблемма, перерыл весь /etc/rcS.d

root@blackICE:/etc/rcS.d# ls
README S07hdparm S25libdevmapper1.02.1 S36modutils S40pcmciautils S61console-cyrillic
S01glibc.sh S10checkroot.sh S28checkfs-loop S37setkey S43portmap S70screen-cleanup
S02mountall.sh S11hwclock.sh S30checkfs.sh S38pppd-dns S47lm-sensors S75sudo
S02mountvirtfs S18ifupdown-clean S30mt-st S39dns-clean S48console-screen.sh
S03udev S20iptables S30procps.sh S40hostname.sh S55bootmisc.sh
S05initrd-tools.sh S20route S34fuse S40ifupdown S55urandom
S05keymap.sh S25brltty S36module-init-tools S40networking S60hwtools
root@blackICE:/etc/rcS.d#

теперь при загрузке постоянно пишет
...
udev add unknow attribyte to key {iT[sda0]}
udev add unknow attribyte to key {iT[sda0]}
...

таких строк 50-100
вопрос с чем это связано ???
как в debiane заставить dmesg, warnings и т.п.
показывать ВСЕ ошибки, а то у меня там инфы - код наплакал (((


hose
()

df - не показывает все винты, ошибаеться

Форум — General

точнее не вывыодит почти ничего
root@blackICE:/var/log/exim4# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda5 14658812 5126816 9531996 35% /
tmpfs 972588 0 972588 0% /dev/shm
root@blackICE:/var/log/exim4#

хотя
# cat /etc/fstab

/dev/sda5 / reiserfs defaults 0 1

proc /proc proc defaults 0 0
usbfs /proc/bus/usb usbfs devmode=0666 0 0
sysfs /sys sysfs defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
/dev/cdrom /media/cdrom iso9660 defaults,ro,users,noexec,noauto 0 0
/dev/sda1 /media/sda1 vfat auto,users,noexec 0 0
/dev/sda7 /media/storage reiserfs users,exec 0 0
/dev/sda6 /var reiserfs users,exec 0 0
/dev/sda9 /tmp swap defaults 0 0
/dev/sda10 /home reiserfs users,exec 0 0
/dev/sdb1 /media/sdb1 vfat noauto,users,exec,umask=000,shortname=winnt,uid=1000,gid=1000 0 0
/dev/sda8 /usr/local reiserfs users,exec 0 0


И даже
root@blackICE:/var/log/exim4# df /home
Filesystem 1K-blocks Used Available Use% Mounted on
- 35157128 2479496 32677632 8% /home
root@blackICE:/var/log/exim4# df /usr
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda5 14658812 5126816 9531996 35% /
root@blackICE:/var/log/exim4# df /usr/local
Filesystem 1K-blocks Used Available Use% Mounted on
- 29301628 51164 29250464 1% /usr/local
root@blackICE:/var/log/exim4#

как видно не показывает /dev/sda8,10

скажите мне какую траву курить что бы такого не было ?

debian etch

ps комменты по неправельно разбитию вита приветствуеться )))

hose
()

/dev/null permission denied постоянно

Форум — General

# ls -l /dev/null
crw-rw-r-- 1 root dialout 1, 3 2007-07-20 23:39 /dev/null

не запускаеться exim4, amavis
постоянно в косоли рядового юзера
"/dev/null permission denied "
ну и соотвественно вытекающие из этого последствия

пока что просто делаю
# chmod a+w /dev/null
(crw-rw-rw- 1 root dialout 1, 3 2007-07-20 23:39 /dev/null)

но после перезапуска права доступа збрасываються

вопрос, кто збрасывает права доступа
и как "по уму" это исправить ?
(пока что просто при загрузке написал скрип который меняет права )

debian etch unstable

hose
()

php + visa, master card

Форум — Web-development

народ кто может подсказать как на php реализуется оплата через вышеперечисленные средства ? т.е. допустим человек заказывает в магазине товар и выберает способ оплаты master card, собственно я не понимаю как происходит сама процедура оплаты, и что самое обижно ни где не могу нарыть доков

помогите плз ....

hose
()

mysql, обычные вставки и использование bind_param, в чем разница ??

Форум — Web-development

если верить книгам то
использование связки
$stmt = $db->prepare('insert into table(...) values(?,?,...)
+ в цикле
{
$stmt->bind_param($name, $soname);
}
$stmt->execute()

должно быть быстрее $db->query('insert into table(...) values(...)');

есть таблица на несколько тысячь строк
и что самое интерестное что оба способа дали один и тот же результат и на одной и тойже строчки
(time limit exidid 300 пришлось повысить max_execution_time)

кто расскажет, может быть я что-то не так делаю, или не понял
идеологию $stmt->bind_param ?

help ))

(ps + ко всему этому после открытия соединения с базой стоит autocommit(false);, если это имеет значение...)

hose
()

apt-get закончилось место в /var

Форум — General

почему закончилось ?
все съел ./cache/apt/archives
ну и соотвественно делаем
rm -r /var/cache/apt/archives

вопрос, для чего система сохраняет установленные все пакеты ?

(просто боюсь что возможно они содежат не просто "историческую"
ценность в системе )

если спросил что-то глупое - можете прокоментировать )
вообщем коменты в студию )

hose
()

mysqld постоянно при запуске пишет что есть ошибки в таблицах

Форум — Web-development

дословно
"Checking for corrupt, not cleanly closed and upgrade needing tables.."

последния запись в лог файле:

070709 0:28:53 InnoDB: Started; log sequence number 0 336364
070709 0:28:53 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.0.41-Debian_1-log' socket: '/var/run/mysqld/mysqld.sock' port: 330....


почитав доки понял что мне нужно сделать
check table
repaire table

но вот только вопрос, как узнать для какой таблицы ?
кто сталкивался, хотелось бы услышать научное решение ;)

hose
()

mysql to Excel и наоборот

Форум — Web-development

вообщем посоветуйте, еще утром не мог найти ничего, а сейчас нашел уже слишком многое, вкраце опишу что нужно: есть сайт, который каждый день подгружет excel файл из внешненего источника. (размеры порядка 2-5 мб) Записывает все в базу (mysql), меняет цену и выкладывает назад рядом с исходным файлом.

как бы я не прошу кинуть мне исходников, просто если кто-то сталкивался посоветуйте плз, что будет оптимальние в мое случае (сам пишу на с, php немного)

какие нашел способы решения (работающие в обе стороны): perl + cvs c/c++ + cvs php + COM js + COM xls2cvs + (c or php)

вот не знаю что выбрать ((

hose
()

testdisk, ошибка компиляции с поддержкой reiserfs

Форум — General

не большое отступление, снес 60 гб нужной инфы на reiser3.6 разделе, хочу востановить
скачал сердцы testdisk (по умолчанию он без reiserfs скомпилен :( )
делаю
testdisk-6.7# ./configure --with-reiserfs-lib=../progsreiserfs-0.3.1-rc8/libreiserfs/.libs/ --with-reiserfs-includes=../progsreiserfs-0.3.1-rc8/include/
....
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating linux/testdisk.spec
config.status: creating doc_src/testdisk.1
config.status: creating doc_src/photorec.1
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
testdisk-6.7# make
...
rfs_dir.c:228: warning: no previous prototype for Б─≤dal_closeБ─≥
rfs_dir.c: In function Б─≤dal_closeБ─≥:
rfs_dir.c:234: warning: implicit declaration of function Б─≤freeБ─≥
rfs_dir.c:234: warning: nested extern declaration of Б─≤freeБ─≥
rfs_dir.c: At top level:
rfs_dir.c:239: warning: no previous prototype for Б─≤file_closeБ─≥
rfs_dir.c:254: warning: no previous prototype for Б─≤dal_openБ─≥
rfs_dir.c: In function Б─≤dal_openБ─≥:
rfs_dir.c:277: error: Б─≤dal_tБ─≥ has no member named Б─≤entityБ─≥
rfs_dir.c:280: error: Б─≤dal_tБ─≥ has no member named Б─≤nameБ─≥
rfs_dir.c:280: error: Б─≤dal_tБ─≥ has no member named Б─≤nameБ─≥
rfs_dir.c:283: error: Б─≤dal_tБ─≥ has no member named Б─≤errorБ─≥
rfs_dir.c: At top level:
rfs_dir.c:305: warning: no previous prototype for Б─≤dal_set_blocksizeБ─≥
rfs_dir.c:385: error: conflicting types for Б─≤dal_statБ─≥
/usr/include/dal/dal.h:71: error: previous declaration of Б─≤dal_statБ─≥ was here
rfs_dir.c: In function Б─≤dal_statБ─≥:
rfs_dir.c:389: error: too few arguments to function Б─≤dal->ops->statБ─≥
rfs_dir.c: In function Б─≤reiser_dirБ─≥:
rfs_dir.c:406: warning: unused parameter Б─≤disk_carБ─≥
rfs_dir.c:406: warning: unused parameter Б─≤partitionБ─≥
rfs_dir.c:406: warning: unused parameter Б─≤clusterБ─≥
rfs_dir.c: In function Б─≤dir_partition_reiser_initБ─≥:
rfs_dir.c:466: warning: unused variable Б─≤errorБ─≥
rfs_dir.c:465: warning: unused variable Б─≤offsetБ─≥
rfs_dir.c:463: warning: unused variable Б─≤leafБ─≥
make[2]: *** [rfs_dir.o] Error 1
make[2]: Leaving directory `/media/storage/source_soft/testdisk-6.7/src'
....
копиляция завершилась с ошибкой,

ну и собственно вопрос, как мне бы это пофиксить ?
в папке с testdisk был какой-то progreiserfs-journal.patch -
сделал, наложил не помогло (



hose
()

/bin/sh очень просто скипт

Форум — Development

есть код
#!/bin/sh


if[ -f /sbin/iptables ];
then
echo '1'
echo '2'
echo '3'
else
echo '4'
echo '5'
fi
echo 'hi'


vladka@blackICE:/home/vladka/iptables# ./test
./test: line 4: if[ -f /sbin/iptables ]: No such file or directory
./test: line 5: syntax error near unexpected token `then'
./test: line 5: `then'
vladka@blackICE:/home/vladka/iptables#

вопрос что не так ?

Bash Version: 3.1
Patch Level: 17
Release Status: release

help

hose
()

Tiger постоянно что-то шлет мне на мыло

Форум — General

"file system fusectl used by 'fusectl' is not recognized as localfilesystem "

кто-нибудь просветите меня, что он этим имеет ввиду ?

hose
()

iptables или squid ? подсчет траффа

Форум — Admin

такое предысловие, есть пять машин, которые решили скинуться и купить себе много траффа как заборить я уже разобрался, а вот как ограничить кол-во исх\вход траффа в месяц на машину пока что найти не могу

и вообще в какую сторону посоветуете копать iptables или squid ? (как бы вроде это делать могу обе программки, какие +\- ??)

ps руки вроде не кривые скипты писать вроде умею, вот только не знаю с чего начать читать и на предмет чего pps в основном трафф будешь уходить на скачку с торрента, если это имеет значение в данном случае

ppps пасиба за ответы

hose
()

посоветуйте chess для lan game

Форум — Talks

соственно САБЖ

ps и желательно бы под винду тоже!!!

пасиба

hose
()

RSS подписка на новые темы