Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Perl: Общие вопросы > Перл, первый скрипт |
Автор: hotdap 6.5.2006, 17:22 |
Уважаемые ассы интренет программирования! Не сочтите мой вопрос банальным. Я только начал изучение Perl, до этого программированием не занимался вообще. И сразу первый вопрос: Набираю код: #!\local\perl\bin\ print "Введите имя:\n"; $a = <STDIN>; print "$a"; Я так думаю, когда я запускаю этот скрипт прграмма просит ввести имя, после моего ввода с клавиатуры, она его повторит. Но у меня ничего не получилось: Запускаю скрипт, выводится предложение ввести имя, я ввожу имя, нажимаю enter и все, повторение имени скрипт не выводит. Подскажите, пожалуйста в чем причина? |
Автор: Wowa 6.5.2006, 21:06 |
Я попробуй написать: print "test"; Отобразит? |
Автор: shootnix 6.5.2006, 22:05 | ||
гы, она просто выводит и завершает работу. всё происходит довольно быстро, мало кто успевает разобрать ![]() ![]()
Программа будет ждать теперь очередного ввода и не закроется, пока не нажмёшь enter |
Автор: Wowa 6.5.2006, 22:16 |
ну, в консоли ведь все равно должно быть видно. У меня есть подозрение, что программа умирает из-за отсутствия выдачи "Content-type". |
Автор: hotdap 6.5.2006, 22:38 | ||
Wowa, print "test", попробовал. Все нормально. Выпечатывает test shootnix, попробовал задержать, тоже не помогает Вот что у меня получилось. учитывая ваши советы:
Все равно ничего не получается. Может у меня что с наcтройкой программы не правильно. Я пытаюсь работать в DZsoft Perl Editor 5.1 |
Автор: Wowa 6.5.2006, 22:40 |
Хм. А ошибку 500 не выдает? Нет возможности посмотреть лог ? |
Автор: hotdap 6.5.2006, 22:55 | ||
Ошибку не выдает. Мне кажется программа не видит команды $a=<STDIN>;, потому что если я делаю такой код:
то есть заменю пременную а на тест, то программа пролетает строку $a=<STDIN>; и сразу выпечатывает: Ваше имя? <html><h1>test</h1></html> не дожидаясь пока я введу что либо с клавиатуры. |
Автор: Wowa 6.5.2006, 22:58 | ||
убери весь хтмл и print "Content-type: text/html\n\n"; Ты ведь не в браузере работаешь, а если в браузере - то браузер, это не консоль. Поэтому у тебя STDIN ничего и нет. Добавлено @ 22:59 Вот, например, рабочий пример:
но запускать в консоли! |
Автор: hotdap 6.5.2006, 23:12 |
Запустил я Ваш код в консоли. После обработки кода программа выдала сообщение одной строкой: Name : Hallo, ! , опять же не дожидаясь ввода переменной. Я уже наверное замучил своими делетантскими вопросами, но как говориться у Вас в подписи: "Только действия приближают Ваш успех! Только работая Вы добьетесь намеченного!" |
Автор: nitr 6.5.2006, 23:36 | ||||
![]()
Добавлено @ 23:40 Да! и если ты хочешь скрипт CGI... то <STDIN> зачем используешь ![]() ![]() благо литературы полно... ссылки http://forum.vingrad.ru/index.php?showtopic=1167&view=findpost&p=5404 Добавлено @ 23:43 для начала всё же стоит прочесть лит-ру по программированию PERL... и скрипт свой первый легче будет написать... Perl - это не только веб-программирование. Если всё же у тебя вопрос по CGI, то он не в тот раздел задан ;) Это к слову |
Автор: sharq 7.5.2006, 13:47 | ||
hotdap, хитрый у тебя путь к perl ![]() Вот вариант:
Если не сработает, то приведи листинг работы скрипта. ![]() Добавлено @ 13:51 Запускать perl название_скрипта.pl (это на всякий случай) |