Žinios Discovery
/ Knowledge Discovery >> Žinios Discovery >> Technika >> kompiuteris >> kompiuterių programinė įranga >>

Kaip CGI scenarijus Works

inys -tipo: text /html \\ n \\ n "); printf (" < HTML > \\ n ";); printf (" < kūno > \\ n "); printf (" < h1 > įvesta vertė buvo: ") printf ("% s < /h1 > \\ n ", sukelti GETENV funkcijas (" QUERY_STRING ")); printf (" < /body > \\ n "); printf (" < /html > \\ n "); grįžti 0;}

Jis buvo sudarytas pagal šią komandą:

 gcc simpleform.c -o simpleform.cgi 

​​Ir jis buvo įtrauktas į cgi-bin kataloge. Ši programa tiesiog susitvarko vertę atsiųstą formą ir rodo jį. Pavyzdžiui, jūs galite pamatyti taip:

 įvesta vertė buvo: Vardas = John Smith + 

pavadinimas yra už teksto įvesties srityje formos identifikatorius (kiekvienas įvesties laukas forma turėtų turėti unikalus identifikatorius), ir Jonas + Smithas yra tipiškas pavadinimas, kuris gali būti įrašytas į formą. Atkreipkite dėmesį, kad " + " pakeičia tarpo simbolį.

Iš šio Pavyzdžiui, jūs galite pamatyti, kad pagrindinis procesas, įkuriantis formą ir gauti duomenis iš formos į CGI skripto yra gana paprasta. Čia yra detalių pora nepamiršti:

  • Kiekvienas įvesties laukelis formoje turi turėti unikalų identifikatorių
  • forma reikia naudoti arba GET arba POST metodą. , GET metodas turi tą privalumą, kad Jūs galite pamatyti forma vertybes URL išsiųstas į scenarijų, ir kad todėl derinti lengviau.
  • Yra neabejotinas ribos simbolių skaičius, kuris gali būti siunčiami per GET metodu , todėl įrašas yra pageidaujama didelių formų.
  • Duomenų, kad ateina per GET metodu gauta pažvelgus QUERY_STRING aplinkos kintamąjį (paprastai skaityti su sukelti GETENV funkcijas funkcijos C arba $ ENV įrenginio Perl). Duomenys, kurie ateina per POST metodu yra prieinama per STDIN naudojant gauna C arba skaityti Perl.
  • Duomenų, kad ateina ketina turėti visus laukus sudurtinius sujungti į vieną eilutę, ir daug simbolių bus pakeisti, todėl reikia vertimo. Pavyzdžiui, visi tarpai bus pakeisti pliusus.

    QUERY_STRING aplinkos kintamąjį pakelia temą aplinkos kintamųjų apskritai. Yra aplinkos kintamųjų skaičius, kad jūs galite ištirti savo CGI scenarijai, 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_US

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