Získávání znalostí
/ Knowledge Discovery >> Získávání znalostí >> technologie >> počítač >> počítačový program >>

Jak CGI skriptování Works

dnota byla: ") printf ("% s < /h1 > \\ n ", getenv (" QUERY_STRING ")); printf (" < /body > \\ n "); printf (" < /html > \\ n "); return 0;}

To byl sestaven s následující příkaz:

 gcc simpleform.c -o simpleform.cgi 

​​A to bylo umístěno v adresáři cgi-bin. Tento program prostě zvedne hodnotu odeslaného formuláře a zobrazí jej. Například, můžete vidět následující:

 Zadaná hodnota byla: Name = John Smith + 

Name je identifikátor pro pole pro psaní textu ve formě (každý vstupní pole na formuláři by měl mít jedinečný identifikátor), a John Smith + je typický název, který by mohl být zapsány na formuláři. Všimněte si, že " + " nahradí znak mezery.

Z tohoto příkladu můžete vidět, že základní proces zřízení formulář a získávání dat z formuláře do skriptu CGI je poměrně jednoduché. Zde je několik údajů, které mají mít na paměti:

  • Každý vstupní pole ve formuláři by měly mít jedinečný identifikační kód
  • Formulář musí používat buď GET nebo metody POST. , Metoda GET má tu výhodu, že můžete vidět hodnoty ve formuláři v URL zaslané scénáře, a to dělá ladění jednodušší.
  • existuje konkrétní omezení počtu znaků, které lze odeslat pomocí metody GET , takže POST je výhodná pro velké formulářů.
  • Data, která přichází v pomocí metody GET je přijat při pohledu na proměnnou QUERY_STRING prostředí (obvykle čtení s funkcí getenv v C nebo $ ENV zařízení v Perlu). Data, která přichází v pomocí metody POST je k dispozici prostřednictvím STDIN použití dostane v C nebo číst v Perlu.
  • Data, která přijde, bude mít všechna pole spojení společně v jednom řetězci, a mnoho postav bude nahrazena, a proto potřebují překlad. Například, budou všechny prostory nahradí plusy.

    Proměnná prostředí QUERY_STRING vyvolá téma proměnných prostředí obecně. Existuje celá řada proměnných prostředí, které můžete prozkoumat ve svých CGI skripty, including:

  • AUTH_TYPE
  • CONTENT_LENGTH
  • CONTENT_TYPE
  • GATEWAY_INTERFACE
  • HTTP_ACCEPT
  • HTTP_USER_AGENT
  • PATH_INFO
  • PATH_TRANSLATED
  • QUERY_STRING
  • REMOTE_ADDR
  • REMOTE_HOST
  • REMOTE_IDENT
  • REMOTE_USER
  • REQUEST_METHOD
  • SCRIPT_NAME
  • SERVER_NAME
  • SERVER_PORT
  • SERVER_PROTOCOL
  • SERVER_SOFTWARE

    There jsou všechny druhy zajímavých kusů informací pohřbených v těchto proměnných

    Page [1] [2] [3] [4] [5] [6] [7] [8] [9]