This session, Visual FoxPro, the Internet, and You will focus on the issues involved with connecting Internet users to your data!

Why are we here?

What are we doing?

What is the World Wide Web?

Web Pages

The documents available on the World Wide Web are known as Web Pages.

Tools

We are using three tools in these examples:
https
the Web Server
perl
the Scripting Language
Visual FoxPro
the Query Engine

https Intro

perl Intro

Basic perl examples

Vanilla Perl Sample
Vanilla Perl Sample Src

Installing perl and https

both have uninstall features!!!!
perl
Find a home directory for perl. Run the INSTALL.CMD that comes with the distribution. Start up a new command shell to get the new PATH settings. If the web server seems to have a problem running perl, put a copy in the https data directory.
  • available on
    ftp://mirrors.aol.com/pub/cica/pc/win3/nt/ntperlb.zip
    Windows Shareware Forum on CIS
    https
    Move https.exe, https.hlp and https.cpl into your \winnt35\system32 directory (%systemroot%\system32)
    Type https -install.
    Set up the data directory using the control panel
    Simply type net start "http server" to run it.
  • available on
    http://emwac.ed.ac.uk/html/internet_toolchest/https/contents.htm
    Microsoft Windows NT 3.5 Resource Kit
  • VFP and Perl

    xbase.pl

    Why use perl?

    vfp and html

    The more advanced examples require that vfp generate the html documents that perl sends to https, ultimately ending up on the user's web browser. To this end, I have created html.prg - a class library for generating html documents.

    class - htmlpage
    class - htmlobj
    htmlform - container class which holds form elements
    htmlinput - input region for forms
    htmlheader - header for html documents
    htmllink - html link to other documents or resources
    htmllist - html list base class
    class - htmllist
    definitionlist
    unorderedlist
    orderedlist
    menulist
    directorylist

    Basic and Intermediate Connectivity

    xbase.pl Perl Library
    Sample Form Input
    dbf_form.pl Sample Form Input src

    Advanced Connectivity

    querysrv.scx

    Tables
    qspoll
    qp_method - what to do (update, insert, skip, skip-1, blank)
    qp_dbc - name of dbc, if relevant
    qp_table - name of table
    qp_fields - space delimited list of fields (for retrieval)
    qp_query - differs based on request
    qp_form - name of form to create, if any
    qp_script - name of perl script used for retrieval requests
    qp_title - title for generated form
    qsfields
    qf_parent - link to qspoll.qp_query for inserts/updates
    qf_fields - name of the field
    qf_value - the value to insert or update
    Methods
    timer1.timer
    opens polling tables
    locks request records
    examines request type
    sends record retrieval requests (skip, skip-1, top, blank) to qsbuildhtmlform
    sends update/insert requests to qsupdate
    querysrv.qsbuildhtmlform
    creates an html page
    locates the record requested
    adds a form object
    adds fields to the form
    adds links to other actions (skip, add, etc.)
    qsupdate
    recognizes one type of primary key (character type, padded on left with zeros)
    if an insert is requested, figures out the name of the primary key and calls a dbc stored procedure nextid() to get the value
    inserts or updates the record in question
    Visual FoxPro Query Interface src
    Form example with table
    Form example with a view

    Last, but not least, the HTML Wizard!!!

    Resources

    Where do I download the latest version of this stuff???

    ftp://spiderweb.com/public/win_nt/http/vfpinet.zip

    My email address: bjepson@conan.ids.net

    Some Web Pages

    Windows NT Resource Center
    EMWAC Web Server
    The FoxPro I/O Address
    FoxPro Yellow Pages

    Other Related Internet Resources

    FoxPro Discussion List: FoxPro-L-Request@dswi.com
    Include in the subject the word: subscribe

    Windows NT discussion list: mailbase@mailbase.ac.uk
    Include in the body of your message: join windows-nt Firstname Lastname

    Windows NT perl discussion list: Majordomo@mail.hip.com
    Include in the body of your message: subscribe ntperl

    FoxHtml Discussion list: FoxWeb-L-Request@dsw.com
    Include in the subject or body the word: subscribe