Перейти к содержанию

cgi-bin script


Рекомендуемые сообщения

Помогите новичку, pls.

Вот в html имеется форма с некоторым полем, а action есть cgi-bin скрипт (shell). почему-то не передается значение из поля формы в этот скрипт! Методы пробовал и get и post. Данные в скрипте пытаюсь получить $имя_поля_в_форме.

И еще проблема. Скрипт выполняет почему-то не все команды, которые в нем есть. Например, системное время выводит, а графические файлы не генерирует!

Ссылка на комментарий
Поделиться на другие сайты

Виноват! Вот скрипт

#!/bin/sh

echo Content-type: text/html

echo

cat << EOF

<html><head>

<title>Speed</title>

</head>

<body>

<p>

EOF

echo $theName

if [ ! -z "theName" ]; then

echo "Hello, "

echo $theName

else

echo "You don't have a name?!"

fi

cat<<EOF

</p>

<p><a href="http://localhost/form.html">Go back</a><p>

</body></html>

EOF

А вот html:

<html>

<head>

<title>Name</title>

</head>

<body>

<h2>Who areyou?</h2>

<form method="get" action="/cgi-bin/test-cgi">

<p>Enter your name: <input name="theName"></p>

<p><input type="submit"></p>

</form>

</body>

</html>

Ссылка на комментарий
Поделиться на другие сайты

я прислал только простейший из моих скриптов, без графики. я понимаю, что все должно быть очень просто, но нехватает знаний Embarassed

Ссылка на комментарий
Поделиться на другие сайты

Виноват! Вот скрипт

#!/bin/sh

echo Content-type: text/html

echo

cat << EOF

<html><head>

<title>Speed</title>

</head>

<body>

<p>

EOF

echo $theName

if [ ! -z "theName" ]; then

echo "Hello, "

echo $theName

else

echo "You don't have a name?!"

fi

cat<<EOF

</p>

<p><a href="http://localhost/form.html">Go back</a><p>

</body></html>

EOF

А вот html:

<html>

<head>

<title>Name</title>

</head>

<body>

<h2>Who areyou?</h2>

<form method="get" action="/cgi-bin/test-cgi">

<p>Enter your name: <input name="theName"></p>

<p><input type="submit"></p>

</form>

</body>

</html>

Ссылка на комментарий
Поделиться на другие сайты

Во-первых, по HTTP нужно разделять хедеры двумя переводами строки. Во-вторых, переменные в методах GET и POST получаются по-разному. Может в shell это учтено, но обычно переменные POST доступны через stdin, а GET - через аргументы командной строки.

Ссылка на комментарий
Поделиться на другие сайты

Попробовал Ваши рекомендации - не помогло! Самое странное, что PHP скрипт работает и значения из полей в форме передает в скрипт исправно!

Ссылка на комментарий
Поделиться на другие сайты

Естественно - в PHP переменные обрабатываются автоматом, правда рекомендуется использовать $_POST и $_GET. Насчёт shell не знаю, но, по идее, там такого нет - нужно вручную делать.

Ссылка на комментарий
Поделиться на другие сайты

А как это, вручную?

В книге, которой я пользуюсь, вводится системная переменная (знать бы что это такое в данном случае!): в скрипте при обращении к переменной из поля формы добавлен определенный префикс, типа $WWW_имя_поля_формы. Пробовал... Как бы не так, ха, ха... Короче не знаю что и делать! Может настройки демона httpd надо поменять где-то?

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...