源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

一个SQL管理员的web接口

  • 时间:2020-03-29 04:52 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:一个SQL管理员的web接口
<?        /*************************************************************************************        *        SQLAdmin  v2.0  -  An  SQL  Administration  User  Interface  for  the  Web *         *            Copyright  (C)  1997-98    Alessandro  Vernet  <avernet@scdi.org>      *         *************************************************************************************         *      This  library  is  free  software;  you  can  redistribute  it  and/or       *         *      modify  it  under  the  terms  of  the  GNU  Library  General  Public        *         *      License  as  published  by  the  Free  Software  Foundation;  either         *         *      version  2  of  the  License,  or  (at  your  option)  any  later  version.  *         *                                                                                   *         *      This  library  is  distributed  in  the  hope  that  it  will  be  useful,   *         *      but  WITHOUT  ANY  WARRANTY;  without  even  the  implied  warranty  of      *         *      MERCHANTABILITY  or  FITNESS  FOR  A  PARTICULAR  PURPOSE.    See  the  GNU  *         *      Library  General  Public  License  for  more  details.                       *         *                                                                                   *         *      You  should  have  received  a  copy  of  the  GNU  Library  General  Public *         *      License  along  with  this  library;  if  not,  write  to  the               *         *      Free  Software  Foundation,  Inc.,  59  Temple  Place  -  Suite  330,        *         *      Boston,  MA    02111-1307,  USA.                                             *         *************************************************************************************/        /*  TODO:          *  -  Add  sort  order.          *  -  Add  simple  view.          *  -  Add  some  documentation.          */        /*  LIMITATIONS:          *  -  Works  only  with  mSQL.          */        /*  HISTORY:          *  -  97-11-05  (avernet)  Corrected  a  bug  with  quote.          *  -  98-01-01  (avernet)  Added  a  sortColumn  parameter  to          *      administrationTable  function.          *  -  98-03-14  (avernet)  Added  function  addTable  to  enable  users  to          *      add  (but  not  modify)  en  entry  to  the  database.          *  -  98-05-19  (avernet)  Submitted  to  PX.          *  -  98-10-11  (avernet)  Now  SQLAdmin  works  with  PHP3.  The  PHP2  version          *      will  not  be  mainteained  anymore.          *  -  98-10-11  (avernet)  SQLAdmin  is  now  distributed  under  the  LGPL          *      instead  of  MPL.          */        function  escapeforhtml  ($string)        {            $result  =  $string;            //$result  =  ereg_replace  (""",  """,  $result);            $result  =  ereg_replace  ("<",  "<",  $result);            $result  =  ereg_replace  (">",  ">",  $result);            return  $result;        }        function  displayTuple  ($fieldsNumber,  $fieldNames,                                                      $fieldLengths,  $values,  $mode)        {            $result  =  "";            $result  .=  "<FORM  METHOD="post"><TABLE  BORDER><TR>"  .                "<TD  BGCOLOR="#CCCCFF">";            $result  .=  "<TABLE  CELLSPACING="0"  CELLPADDING="0">";            $fieldIndex  =  0;            while  ($fieldIndex  <  $fieldsNumber)            {                $result  .=  "<TR><TD>"  .  $fieldNames  [$fieldIndex]  .  "</TD><TD>";                if  ($fieldLengths  [$fieldIndex]  <=  128)                {                    $result  .=  "<INPUT  TYPE="text"  NAME=""  .                        $fieldNames  [$fieldIndex]  .  ""  VALUE=""  .                        $values  [$fieldIndex]  .  ""  SIZE="64">";                }                else                {                    $result  .=  "<TEXTAREA  NAME=""  .                        $fieldNames  [$fieldIndex]  .  """  .                        "  COLS="64"  ROWS="10"  WRAP="virtual">"  .                        escapeforhtml  ($values  [$fieldIndex])  .  "</TEXTAREA>";                }                $result  .=    "<INPUT  TYPE="hidden"  NAME="old-"  .                    $fieldNames  [$fieldIndex]  .                    ""  VALUE=""  .  escapeforhtml  ($values  [$fieldIndex])  .  "">"  .                    "</TD></TR>";                $fieldIndex++;            }            $result  .=  "<TR><TD  ALIGN="center"  COLSPAN="2">";            if  ($mode  ==  "modify")            {                $result  .=  "<INPUT  TYPE="submit"  NAME="remove"  VALUE="Remove">";                $result  .=  "<INPUT  TYPE="submit"  NAME="update"  VALUE="Update">";            }            else                {  $result  .=  "<INPUT  TYPE="submit"  NAME="add"  VALUE="Add">";  }            $result  .=  "</TABLE></TD></TR></TABLE></FORM>";            return  $result;        }        function  fieldFromType  ($text,  $type)        {            if  ($type  ==  "int"  ||  $type  ==  "uint"  ||  $type  == "real")                {  $result  =  $text;  }            else                {  $result  =  "'"  .  AddSlashes  ($text)  .  "'";  }            return  $result;        }        function  executeMsql  ($database,  $command)        {            /*echo  "<TT>"  .  $command  .  "</TT><HR>";*/            msql  ($database,  $command);        }        function  handleRemove  ($database,  $table,  $fieldsNumber,                                                      $fieldNames,  $fieldLengths,  $fieldTypes)        {            global  $remove;            if  ($remove  !=  "")            {                $command  =  "DELETE  FROM  "  .  $table  .  "  WHERE  ";                $fieldIndex  =  0;                while  ($fieldIndex  <  $fieldsNumber)                {                    $fieldName  =  "old-"  .  $fieldNames  [$fieldIndex];                    global  $$fieldName;                    $command  .=  $fieldNames  [$fieldIndex]  .  "="  .                        fieldFromType  ($$fieldName,  $fieldTypes  [$fieldIndex]);                    if  ($fieldIndex  !=  $fieldsNumber  -  1)                        {  $command  .=  "  AND  ";  }                    $fieldIndex++;                }                               executeMsql  ($database,  $command);            }        }        function  handleUpdate  ($database,  $table,  $fieldsNumber,                                                      $fieldNames,  $fieldLengths,  $fieldTypes)        {            global  $update;            if  ($update  !=  "")            {                $command  =  "UPDATE  "  .  $table  .  "  SET  ";                $fieldIndex  =  0;                while  ($fieldIndex  <  $fieldsNumber)                {                    $fieldName  =  $fieldNames  [$fieldIndex];                    global  $$fieldName;                    $command  .=  $fieldName  .  "="  .                        fieldFromType  ($$fieldName,  $fieldTypes  [$fieldIndex]);                    if  ($fieldIndex  !=  $fieldsNumber  -  1)                        {  $command  .=  ",  ";  }                    $fieldIndex++;                }                $command  .=  "  WHERE  ";                $fieldIndex  =  0;                while  ($fieldIndex  <  $fieldsNumber)                {                    $fieldName  =  "old-"  .  $fieldNames  [$fieldIndex];                    global  $$fieldName;                    $command  .=  $fieldNames  [$fieldIndex]  .  "="  .                        fieldFromType  ($$fieldName,  $fieldTypes  [$fieldIndex]);                    if  ($fieldIndex  !=  $fieldsNumber  -  1)                        {  $command  .=  "  AND  ";  }                    $fieldIndex++;                }                executeMsql  ($database,  $command);            }        }        function  handleAdd  ($database,  $table,  $fieldsNumber,                                                $fieldNames,  $fieldLengths,  $fieldTypes)        {            global  $add;            if  ($add  !=  "")            {                $command  =  "INSERT  INTO  "  .  $table  .  "  (";                $fieldIndex  =  0;                while  ($fieldIndex  <  $fieldsNumber)                {                    $command  .=  $fieldNames  [$fieldIndex];                    if  ($fieldIndex  !=  $fieldsNumber  -  1)                        {  $command  .=  ",  ";  }                    $fieldIndex++;                }                $command  .=  ")  VALUES  (";                $fieldIndex  =  0;                while  ($fieldIndex  <  $fieldsNumber)                {                    $fieldName  =  $fieldNames  [$fieldIndex];                    global  $$fieldName;                    $command  .=  fieldFromType  ($$fieldName,  $fieldTypes  [$fieldIndex]);                    if  ($fieldIndex  !=  $fieldsNumber  -  1)                        {  $command  .=  ",  ";  }                    $fieldIndex++;                }                $command  .=  ")";                executeMsql  ($database,  $command);            }        }        function  displayRemoveUpdate  ($database,  $table,  $sortColumn,                                                                    $fieldsNumber,  $fieldNames,  $fieldLengths)        {            $result  =  "";            if  ($sortColumn  !=  "")                {  $sortColumn  =  "  ORDER  BY  "  .  $sortColumn;  }            $msqlresult  =  msql  ($database,  "SELECT  *  FROM  "  .  $table  .  $sortColumn);            $tuplesNumber  =  msql_numrows  ($msqlresult);            $tupleIndex  =  0;            while  ($tupleIndex  <  $tuplesNumber)            {                $fieldIndex  =  0;                while  ($fieldIndex  <  $fieldsNumber)                {                    $values  [$fieldIndex]  =  msql_result  ($msqlresult,  $tupleIndex,                        $fieldNames  [$fieldIndex]);                    $fieldIndex++;                }                $result  .=  displayTuple  ($fieldsNumber,  $fieldNames,                    $fieldLengths,  $values,  "modify");                $tupleIndex++;            }            return  $result;        }        function  displayAdd  ($fieldsNumber,  $fieldNames,  $fieldLengths)        {            $result  =  "";            $fieldIndex  =  0;            while  ($fieldIndex  <  $fieldsNumber)            {                $values  [$fieldIndex]  =  "";                $fieldIndex++;            }            $result  .=  displayTuple  ($fieldsNumber,  $fieldNames,                $fieldLengths,  $values,  "add");            msql_close  ();            return  $result;        }        function  administrationTable  ($database,  $table,  $sortColumn)        {            $result  =  "";            msql_connect  ( "localhost");            $msqlresult  =  msql  ($database,  "SELECT  *  FROM  "  .  $table);            $fieldsNumber  =  msql_numfields  ($msqlresult);             $msqlresult  =  msql_listfields  ($database,  $table);            $fieldIndex  =  0;            while  ($fieldIndex  <  $fieldsNumber)            {                $fieldNames  [$fieldIndex]  =  msql_fieldname  ($msqlresult,  $fieldIndex);                $fieldLengths  [$fieldIndex]  =  msql_fieldlen  ($msqlresult,  $fieldIndex);                $fieldTypes  [$fieldIndex]  =  msql_fieldtype  ($msqlresult,  $fieldIndex);                $fieldIndex++;            }            handleRemove  ($database,  $table,  $fieldsNumber,  $fieldNames,  $fieldLengths,  $fieldTypes);            handleUpdate  ($database,  $table,  $fieldsNumber,  $fieldNames,  $fieldLengths,  $fieldTypes);            handleAdd  ($database,  $table,  $fieldsNumber,  $fieldNames,  $fieldLengths,  $fieldTypes);            $result  .=  displayRemoveUpdate  ($database,  $table,  $sortColumn,  $fieldsNumber,  $fieldNames,     $fieldLengths);            $result  .=  displayAdd  ($fieldsNumber,  $fieldNames,  $fieldLengths);            return  $result;        }        function  addTable  ($database,  $table)        {            $result  =  "";            msql_connect  ( "localhost");            $msqlresult  =  msql  ($database,  "SELECT  *  FROM  "  .  $table);            $fieldsNumber  =  msql_numfields  ($msqlresult);             $msqlresult  =  msql_listfields  ($database,  $table);            $fieldIndex  =  0;            while  ($fieldIndex  <  $fieldsNumber)            {                $fieldNames  [$fieldIndex]  =  msql_fieldname  ($msqlresult,  $fieldIndex);                $fieldLengths  [$fieldIndex]  =  msql_fieldlen  ($msqlresult,  $fieldIndex);                $fieldTypes  [$fieldIndex]  =  msql_fieldtype  ($msqlresult,  $fieldIndex);                $fieldIndex++;            }            handleAdd  ($database,  $table,  $fieldsNumber,  $fieldNames,  $fieldLengths,  $fieldTypes);            $result  .=  displayAdd  ($fieldsNumber,  $fieldNames,  $fieldLengths);            return  $result;        }    ?>   
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部