Программирование => Perl => Тема начата: Dema от 12 Мая 2003, 13:41:15
Название: список элементов
Отправлено: Dema от 12 Мая 2003, 13:41:15
есть список элементов выбранных из mysql по одному столбцу: $sth = $dbh->query("select film from records"); print "\\n"; print ""; как сделать так, чтобы в зависимости от выбранного пользователем элемента по нему выдавалась подробная информация то есть остальные поля. по типу $sth = $dbh->query("select * from records where film=выбранному элементу"); подскажите пожалуйста.
Название: список элементов
Отправлено: C++ от 12 Мая 2003, 15:21:26
Dema Не совсем понятно, что нужно.... если определить выбранный элемент, то:
print "\\n";
а потом вытаскиваешь выбранное значение $film=$q->param(\'product\'); :)
Название: список элементов
Отправлено: Kwazar от 12 Мая 2003, 16:10:13
$sth = $dbh->query("select film from records"); print "\\n";
Где в Место $i прописываете порядковый номер в массиве "выбрираемого элемента", начиная с 0.
Название: список элементов
Отправлено: Dema от 12 Мая 2003, 22:59:34
C++ а где можно описание param найти а то у меня все время ошибку на нем выдает может я че не так делаю? я в perldoc искал не нашел. есть таблица состоящая из полей npp film zakaz и т. д. как по полю film сделать чтобы он выдал и npp и film и zakaz. вот в чем была суть вопроса.
Название: список элементов
Отправлено: C++ от 13 Мая 2003, 09:51:04
perldoc CGI по CGI валом доки
use CGI qw(all); my $q=new CGI; my $prod=$q->param("product"); my $sth=$dbh->prepare("SELECT * FROM table WHERE film=\'$prod\'"); sth->execute; while(my @arr=$sth->fetchrow) { тут то что тебе надо:) }
Название: список элементов
Отправлено: Kwazar от 13 Мая 2003, 11:00:56
Можно обойтись и без этого модуля: read(STDIN, $buffer, $ENV{\'CONTENT_LENGTH\'}); if (!$buffer) { $buffer=$ENV{\'QUERY_STRING\'}; } @pairs = split(/&/, $buffer); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $F{$name} = $value; } На выходе в переменной $F{name }будет то, что должно быть в форма с именем name. Не забудь проверить введимые данные....
Название: список элементов
Отправлено: Mog. от 13 Мая 2003, 14:10:18
Цитировать
Kwazar: Можно обойтись и без этого модуля
Но лучше с ним, тем более, что он обычно присутствует и пользоваться им удобнее чем самопальными парсерами (ИМХО). Пример использования param #/usr/bin/perl use CGI qw( param ); # и никаких обьектов заводить не надо print "Content-type: text/html\\n\\n";
$x=param(\'x\'); if(!$x){$x="Undefined"} print " x = $x"; print< form
Цитировать
Dema: все время ошибку на нем выдает
А какую?
Название: список элементов
Отправлено: Dema от 13 Мая 2003, 15:39:08
а такую: Can\'t call method "param" on an undefined value но суть не в этом с ним я вроде разобрался а вот не могу сообразить как сделать обработчик событий чтобы он в зависимости от выбранного значения в поле film после нажатия на кнопку ok выдавал все остальное прочитал море литературы по htmlу ничего что мне надо не нашел. а может все таки плохо искал?
Название: список элементов
Отправлено: Mog. от 13 Мая 2003, 15:59:23
Цитировать
Dema: обработчик событий
Это на всех (практически языках программирования) пишется с использованием волшебного слова if, которое к html(который не есть язык программирования) не имеет никакого отношения. Искал не там.