0

私はPythonを学んでいるので、本からこの演習を取得しました。これはhtmlフォームです。

<html>
  <body>
    <form method=POST action="cgi-bin/cgi101.py">
      <P><b>Enter your name:</b>
      <P><input type="text name=user" />
      <P><input type="submit" />
    </form>
  </body>
</html>

そして、これは呼び出すスクリプトです:

#!/usr/bin/python3
import cgi
form = cgi.FieldStorage()
# parse form data
print('Content-type: text/html\n')
# hdr plus blank line
print('<title>Reply Page</title>')
# html reply page
if not 'user' in form:
  print('<h1>Who are you?</h1>')
else:
  print('<h1>Hello <i>%s</i>!</h1>' % cgi.escape(form['user'].value))

ロジックにより、ユーザーを入力すると、印刷する必要があります

こんにちはユーザー

。しかし、それは

あなたは誰?

代わりは。これは、スクリプトがフォームにユーザーを表示しないことを意味します。なんで?Cgi/pyスクリプトはcgi-bin/のapacheで許可されています。

4

1 に答える 1

1

ここにタイプミスがあります:

<input type="text name=user" />

これは実際には次のようになります。

<input type="text" name="user" />

タイプと名前は、入力HTMLタグのそれぞれの属性です。それらが常に存在する形式は次のとおりです。

<sometag attribute1="a thing" attribute2="another thing" />

引用符と等号の位置に注意してください。構文の強調表示を行う優れたテキストエディタは、目玉がこれをより明確に理解するのに役立ちます。

于 2012-12-05T17:27:48.470 に答える