Odkrycie wiedza
/ Knowledge Discovery >> Odkrycie wiedza >> tech >> komputer >> Oprogramowanie komputerowe >>

Jak CGI skryptów Works

przycisków. Największa

Plik http://www.howstuffworks.com/cgi-bin/simpleform.cgi odwołuje formie jest program C. Zaczęło się życie, jak ten kawałek kodu C umieszczone w pliku o nazwie simpleform.c: Największa

 #include < stdio.h > #include < stdlib.h > int main () {printf (" zawartość -rodzaj: text /html \\ n \\ n "); printf (" < html > \\ n "); printf (" < body > \\ n "); printf (" < h1 > Wartość wprowadzona było: ") printf ("% s < /h1 > \\ n ", getenv (" QUERY_STRING ")); printf (" < /body > \\ n "); printf (" < /html > \\ n "); return 0;} 

To był skompilowany za pomocą następującego polecenia: Największa

 gcc simpleform.c -o simpleform.cgi 

​​I został umieszczony w katalogu cgi-bin. Ten program po prostu podnosi wartość wysyłanych przez postaci i wyświetla je. Na przykład, można zobaczyć: Największa

 Podana wartość była: Nazwa = Jan + Smith 

Nazwa jest identyfikator pola wprowadzania tekstu w postaci (każde pole wprowadzania na formularzu powinny mieć unikalny identyfikator) i John + Smith jest typowa nazwa, która może zostać wpisane do formularza. Należy pamiętać, że " + " zastępuje spację. Największa

Na tym przykładzie widać, że podstawowy proces tworzenia formularz i pobieranie danych z formularza do skryptu CGI jest dość proste. Oto kilka szczegółów, aby pamiętać:

  • Każde pole wejściowe w formularzu powinny mieć niepowtarzalny identyfikator Największa
  • Formularz musi użyć GET lub metody POST. , Metoda GET ma tę zaletę, że można zobaczyć wartości w postaci adresu URL wysłanego do skryptu, i sprawia, że ​​debugowanie łatwiejsze. Największa
  • Istnieją konkretne ograniczenia co do liczby znaków, które można wysłać za pomocą metody GET , więc POST jest korzystna dla dużych form. Największa
  • Dane, które przychodzi metodą GET jest odbierany przez patrząc na zmiennej środowiskowej QUERY_STRING (zwykle czytać z funkcji getenv w C lub obiektu $ ENV w Perl). Dane, które przychodzi metodą POST jest dostępna za pośrednictwem standardowego wejścia używając dostaje w C lub przeczytać w Perlu. Największa
  • Dane, które przychodzi będzie miał wszystkie pola sklejone w jeden ciąg znaków, a wiele znaków zostaną zastąpione i dlatego muszą tłumaczenie. Na przykład, wszystkie pomieszczenia zostaną zastąpione plusów.

    zmienna QUERY_STRING wywo