首页 > 后端开发 > php教程 > 一个SQL管理员的web接口_php基础

一个SQL管理员的web接口_php基础

WBOY
发布: 2016-05-17 09:46:20
原创
932 人浏览过

   
    /**************************************************** **************************************  
     *        SQLAdmin  v2.0  -  一个  SQL网络管理用户界面 *   
     *            版权  (C)  1997-98    Alessandro  Vernet        *   
     *********************** ****************************************************** ************   
     *      这个库是免费软件;  您可以重新分发它和/或       *   
     *      根据 GNU  库的条款  修改它  通用公共        *   
     *      许可为  由自由软件基金会发布;           *   
     *      许可证版本  2  ,或  (由您选择)任何更新版本。  *   
     *                                                                                   *   
     *      这个  发布该库的目的是希望它有用,   *   
     *      但不提供任何保证;  甚至没有对适销性或特定用途适用性的默示保证。    请参阅  GNU  *   
     *      库通用公共许可证了解更多详细信息。                       *   
     *                                                                                    *   
     *      你  应该收到  GNU 库  通用公共 *   
     *      许可证以及此库的副本;  如果没有,请写信给               *   
     *      免费软件  Foundation,  Inc.,  59  Temple  Place  -  Suite  330,        *   
     *      波士顿,  MA    02111-1307,  美国。                                             *   
     ************************************************ **************************************/   


    / *  待办事项:   
      *  -  添加排序顺序。   
      *  -  添加简单视图。   
      *  -  添加一些  文档。   
      */   

    /*  限制:   
      *  -  仅适用于 mSQL。   
      */   

    /*  历史:   
      *  -  97-11-05  (avernet)  用引用纠正了  一个  错误。   
      *  -  98-01-01  (avernet)  向   
      *      administrationTable 函数添加了一个  sortColumn  参数。   
      *  -  98-03-14  (avernet)  添加了  函数 addTable  ,使用户能够   
      *      添加(但不是修改)  en  条目  到  数据库。   
      *  -  98-05-19  (avernet)  已提交给  PX。   
      *  -  98-10-11  (avernet)  现在 SQLAdmin 可与 PHP3 配合使用。  PHP2 版本   
      *      将不再维护。   
      *  -  98-10-11  (avernet)  SQLAdmin 现在以  LGPL   
      *      而不是  MPL 分发。   
      */   

    函数  escapeforhtml  ($string)   
    {   
        $结果  =  $string;   
        //$结果  =  ereg_replace  (""",  """,  $结果);   
        $结果  =  ereg_replace  ("        $结果  =  ereg_replace  (">",  ">",  $结果);   
        返回$结果;   
    }   

    函数  displayTuple  ($fieldsNumber,  $fieldNames,   
                                                  $fieldLengths,  $values,  $mode)   
    {   
        $结果  =  "";   
        $结果  .=  “

”  。   
            “
”;   
        $结果  .=  "";   
        $fieldIndex  =  0;   
        while  ($fieldIndex          {   
            $result  .=  "";   
            $fieldIndex ;   
        }   
        $result  .=  "
"  。  $fieldNames [$fieldIndex]。  “ ”;   
            if  ($fieldLengths  [$fieldIndex]              {   
                $result  .=  "                    $fieldNames  [$fieldIndex]  .   " "  VALUE=""  .   
                    $values  [$fieldIndex]  .  ""  SIZE="64">";   
            }   
            其他   
            {   
                $结果  .=  "”;   
            }   
            $结果  .=    "                $fieldNames  [$fieldIndex]  .   
                ""  VALUE=""  .   escapeforhtml  ($values [$fieldIndex])  .  “">”  。   
                "
";   
        if  ($mode  ==  "modify")   
        {   
            $result  .=  "";   
            $result  .=  "";   
        }   
        else   
            {  $result  .=  "";  }   
        $result  .=  "
";   
        return  $结果;   
    }   

    function  fieldFromType  ($text,  $type)   
    {   
        if  ($type  ==  “整数”  ||   $ type  ==  "uint"  ||   $type  == "real")   
            {  $结果  =  $text;   }   
        else   
            {  $结果  =  "'"  。 添加斜线  ($text)  .   "' ";  }   
        return  $结果;   
    }   

    函数  executeMsql  ($database,  $command)   
    {   
        /*echo  " “  .  $命令  .  ”
";*/   
        msql  ($database,  $command);   
    }   

    函数  handleRemove  ($database,  $table,  $fieldsNumber,   
                                                 $fieldNames,  $ fieldLengths,  $fieldTypes)   
    {   
        全局  $remove;   
        if  ($remove  !=  "")   
        {   
            $com mand  =  “从  删除”  .   $table  .  “  WHERE  ”;
            $fieldIndex  =  0;   
            while  ($fieldIndex              {   
                $fieldName  =  "旧-”。  $fieldNames [$fieldIndex];   
                全局  $$fieldName;   
                $command  .=  $fieldNames  [$fieldIndex]  .  “=”。   
                    fieldFromType  ($$fieldName,  $fieldTypes  [$fieldIndex]);   
                if  ($fieldIndex  !=  $fieldsNumber  -  1)   
                    {  $command  .=  "  AND  ";  }   
                $fieldIndex ;   
            }                  
            executeMsql  ($database,  $command);   
        }   
    }   

    函数  handleUpdate  ($database,  $table,  $fieldsNumber,   
                                                   $fieldNames,  $ fieldLengths,  $fieldTypes)   
    {   
        全局  $update;   
        if  ($update  !=  "")   
        {   
            $command  =“更新  ”  。  $表。  “ 放 ”;   
            $fieldIndex  =  0;   
            while  ($fieldIndex              {   
                $fieldName  =  $fieldNames  [$fieldIndex];   
                全局  $$fieldName;   
                $command  .=  $fieldName  .  “=”。   
                    fieldFromType  ($$fieldName,  $fieldTypes  [$fieldIndex]);   
                if  ($fieldIndex  !=  $fieldsNumber  -  1)   
                    {  $command  .=  ",  ";  }   
                $fieldIndex ;   
            }   
            $command  .=  "  WHERE  ";   
            $fieldIndex  =  0;   
            while  ($fieldIndex              {   
                $fieldName  =  “旧-”  。  $fieldNames [$fieldIndex];   
                全局  $$fieldName;   
                $command  .=  $fieldNames  [$fieldIndex]  .  “=”。   
                    fieldFromType  ($$fieldName,  $fieldTypes  [$fieldIndex]);   
                if  ($fieldIndex  !=  $fieldsNumber  -  1)   
                    {  $command  .=  "  AND  ";  }   
                $fieldIndex ;   
            }   
            executeMsql  ($database,  $command);   
        }   
    }   

    函数  handleAdd  ($database,  $table,  $fieldsNumber,   
                                             $fieldNames,  $fieldLengths,  $fieldTypes)   
    {   
        全局  $add;   
        if  ($add  !=  "")   
        {   
            $command  =  “插入到  ”  。  $表。  "  (";   
            $fieldIndex  =  0;   
            while  ($fieldIndex              {   
                 $command  .=  $fieldNames  [$fieldIndex];   
                if  ($fieldIndex  != $fieldsNumber  -  1)   
                   {  $command  .=  ",  ";   }   
                $fieldIndex ;   
           }   
            $command  .=  ")  VALUES  (";   
            $fieldIndex  =  0;   
            while  ($fieldIndex             {   
                $fieldName  =  $fieldNames  [$fieldIndex];   
                全局  $$fieldName;   
                $command  .=  fieldFromType  ($$fieldName,  $fieldTypes [$fieldIndex]);   
               if  ($fieldIndex  !=  $fieldsNumber  -  1)   
                   {  $command  .=  ",  ";   }   
                $fieldIndex ;   
            }   
            $命令  .= “)”;   
            executeMsql  ($database,  $command);   
        }   
    }   

    函数  displayRemoveUpdate  ($database,  $table,  $sortColumn,   
                                                                 $fieldsNumber,  $ fieldNames,  $fieldLengths)   
    {   
        $结果  ="";   
        if  ($sortColumn  !=  "")   
            {  $sortColumn  =  "  ORDER  BY  "  。  $排序列;  }   
        $msqlresult  =  msql  ($database,  "SELECT  *  FROM  "  .  $table  .  $sortColumn);   
        $tuplesNumber  =  msql_numrows  ($msqlresult);   
        $tupleIndex  =  0;   
        while  ($tupleIndex          {   
            $fieldIndex  =  0;   
            while  ($fieldIndex              {   
                $values  [$fieldIndex]  =  msql_result  ($msqlresult,  $tupleIndex,   
                    $fieldNames  [$fieldIndex]);   
                $fieldIndex ;   
            }   
            $result  .=  displayTuple  ($fieldsNumber,  $fieldNames,   
                $fieldLengths,  $values,  “修改”);   
            $tupleIndex ;   
        }   
        返回  $结果;   
    }   

    函数  displayAdd  ($fieldsNumber,  $fieldNames,  $fieldLengths)   
    {   
        $result  =  "";   
        $fieldIndex  =  0;   
        while  ($fieldIndex          {   
            $values  [$fieldIndex]  =  "";   
            $fieldIndex ;   
        }   
        $结果  .=  displayTuple  ($fieldsNumber,  $fieldNames,   
            $fieldLengths,  $values,  "add");   
        msql_close  ();   
        返回$结果;   
    }   

    函数  administrationTable  ($database,  $table,  $sortColumn)   
    {   
        $结果  =  "";   
        msql_connect  (“localhost”);   
        $msqlresult  =  msql  ($database,  "SELECT  *  FROM  "  .  $table);   
        $fieldsNumber  =  msql_numfields  ($msqlresult);    
        $msqlresult  =  msql_listfields  ($database,  $table);   
        $fieldIndex  =  0;   
        while  ($fieldIndex          {   
            $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);   
        $结果  .=  displayRemoveUpdate  ($database,  $table,  $sortColumn,  $fieldsNumber,  $fieldNames,    
$fieldLengths);   
        $结果  .=  displayAdd  ($fieldsNumber,  $fieldNames,  $fieldLengths);   
        返回$结果;   
    }   

    函数  addTable  ($database,  $table)   
    {   
        $结果  =  "";   
        msql_connect  (“localhost”);   
        $msqlresult  =  msql  ($database,  "SELECT  *  FROM  "  .  $table);   
        $fieldsNumber  =  msql_numfields  ($msqlresult);    
        $msqlresult  =  msql_listfields  ($database,  $table);   
        $fieldIndex  =  0;   
        while  ($fieldIndex          {   
            $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);   
        $结果  .=  displayAdd  ($fieldsNumber,  $fieldNames,  $fieldLengths);   
        返回$结果;   
    }   
?>   

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板