⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dgitest.cpp

📁 《Web编程专家指南》
💻 CPP
字号:
/*
 *  Dynamic  Gateway  Interface
 *  A. Montefusco
 *  June 10, 1995
 *
 *  Example 1
 *
 */


#include <time.h>
#include <string.h>
#include <iostream.h>
#include "dgi.h"
#include "dgihelp.h"


#if defined(__OS2__) && defined(__BORLANDC__)
#define EXPORT _export
#else
#define EXPORT
#endif



/*
 *   HTML 2.0 compatible header... 
 */

#define HTML  "Content-type: text/html\r\n\r\n"                       \
              "<html>                                               " \
              "<head>                                               " \
              "<title>Returned from DGI executable !!! </title>     " \
              "</head>                                              " \
              "<body>                                               " \
              "<h1>                                                 " \
              "DGI TEST                                             " \
              "</h1>                                                " \
              "<p>                                                  " \
              "Returned from Dynamic Gateway Interface executable.  "

/*
 *   ... and trailer
 */

#define HTML_TRAILER  "</body>" \
                      "</html>"



PDGI_FN_OUTMSG  pFnOut;
PDGI_FN_GETDATA pFnGetData;
void           *pCbPrm;


long EXPORT DgiStart (PDGI_FN_OUTMSG pFnOm, PDGI_FN_GETDATA pFnGd, void *pPrm)
{
   cerr << "DgiStart" << endl;
   pFnOut     = pFnOm;
   pFnGetData = pFnGd;
   pCbPrm     = pPrm;
   return 1;
}



long EXPORT DgiDoAction (const char *pszQueryInfo,
                         const char *pszPathInfo,
                         const char *pszFormData,
                         char *)
{
   cerr << "DgiDoAction:" << endl
        << "Query info:\t[" << pszQueryInfo << "]"
        << endl
        << "Path info:\t[" << pszPathInfo << "]"
        << endl
        << "Form data:\t[" << pszFormData << "]"
        << endl;

   htPrintf ("%s", HTML);

   time_t  timeNow = time(0);
   htPrintf ("<p>Run @ %s GMT+1<p>", asctime (localtime(&timeNow)));

   htPrintf ("Remote host: <b>%s</b><p>", pFnGetData ("REMOTE_HOST", pCbPrm));

   htPrintf ("%s", HTML_TRAILER);

   return 1;
}


long EXPORT DgiEnd (void)
{
   cerr << "DgiEnd" << endl;
   return 1;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -