JSQL SQLProxy 的 php 版本代码

 更新时间:2010年05月05日 00:08:16   作者:  
下面是JSQL.OnServer() 用到的SQLProxy代理的php版本代码
复制代码 代码如下:

<?php
date_default_timezone_set("PRC");
$host = stripslashes($_POST['host']);
if($host == null) { $host = 'localhost'; };
$user = stripslashes($_POST['user']);
if($user == null) { $user = 'root'; };
$password = stripslashes($_POST['password']);
if($password == null) { $password = ''; };
$database = stripslashes($_POST['database']);
if($database == null) { die('DataBase Name Needed!'); };
$SQL = stripslashes($_POST['SQL']);
if($SQL == null) { die('SQL Needed!'); };
$db = mysql_connect($host, $user, $password);
mysql_select_db($database,$db);
if(preg_match('/\s*select/i',$SQL)) {
$result = mysql_query($SQL,$db);
$rowcount = mysql_num_rows($result);
if($rowcount<1){
printf("null");
}
else
{
$fieldsarr = array();
while ($field = mysql_fetch_field($result)) {
$fieldsarr[] = $field;
};
printf("[");
$rowindex = 0;
while ($row = mysql_fetch_row($result)) {
$rowindex++ ;
printf("{");
$fieldcount = count($fieldsarr);
for($i=0;$i<$fieldcount;$i++) {
$fieldname = $fieldsarr[$i]->name;
$fieldtype = $fieldsarr[$i]->type;
$fieldvalue = $row[$i];
if($fieldvalue==null) {
$fieldvalue = "null";
}
else if($fieldtype=='string'){
$fieldvalue = "'$fieldvalue'";
}
else if($fieldtype=='datetime'){
$fieldvalue = str_replace("-","/",$fieldvalue);
$fieldvalue = "new Date('$fieldvalue')";
}
printf("%s : %s ", $fieldname, $fieldvalue);
//printf($fieldtype);
if($i<$fieldcount-1) {
printf(" , ");
};
};
printf("}");
if($rowindex<$rowcount) {
printf(" , ");
};
};
printf("]");
};
mysql_free_result($result);


}
else if(preg_match('/\s*insert/i',$SQL)) {
mysql_query($SQL,$db);
$effectrows = mysql_affected_rows();
if($effectrows==1) {
printf("true");
} else {
printf("false");
};
}
else if(preg_match('/\s*update/i',$SQL)) {
mysql_query($SQL,$db);
$effectrows = mysql_affected_rows();
printf($effectrows);
}
else if(preg_match('/\s*delete/i',$SQL)) {
mysql_query($SQL,$db);
$effectrows = mysql_affected_rows();
printf($effectrows);
}
else if(preg_match('/\s*create\s+table/i',$SQL)) {
if(mysql_query($SQL,$db)) {
printf("true");
} else {
printf("false");
};
}
else if(preg_match('/\s*drop\s+table/i',$SQL)) {
if(mysql_query($SQL,$db)) {
printf("true");
} else {
printf("false");
};
}
else {
printf("command not supported yet!");
};
mysql_close($db);
?>

相关文章

  • 几个有趣的Javascript Hack

    几个有趣的Javascript Hack

    在网上看到几个有意思的Javascript代码,和大家分享一下。直接将代码拷贝到IE中即可,注意代码为一样。不可分行
    2010-07-07
  • 浅谈js中Object.create()与new的具体实现与区别

    浅谈js中Object.create()与new的具体实现与区别

    本文主要介绍了js中Object.create()与new的具体实现与区别,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • 微信小程序-form表单提交代码实例

    微信小程序-form表单提交代码实例

    这篇文章主要介绍了微信小程序-form表单提交,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • 原生js实现半透明遮罩层效果具体代码

    原生js实现半透明遮罩层效果具体代码

    半透明遮罩层效果基本上都是使用插件实现的,下面为大家分享下使用原生js实现半透明遮罩效果,感兴趣的朋友可以参考下哈,希望对你熟悉原生js有所帮助
    2013-06-06
  • javascript运算符——逻辑运算符全面解析

    javascript运算符——逻辑运算符全面解析

    下面小编就为大家带来一篇javascript运算符——逻辑运算符详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • JavaScript中颜色模型的基础知识与应用详解

    JavaScript中颜色模型的基础知识与应用详解

    颜色模型,是用来表示颜色的数学模型。比如最常见的 RGB模型,使用 红绿蓝 三色来表示颜色。本文就来和大家讲讲JavaScript中颜色模型的基础知识与应用吧
    2023-02-02
  • 浅谈JS继承_借用构造函数 & 组合式继承

    浅谈JS继承_借用构造函数 & 组合式继承

    下面小编就为大家带来一篇浅谈JS继承_借用构造函数 & 组合式继承。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • 一文搞懂JSON(JavaScript Object Notation)

    一文搞懂JSON(JavaScript Object Notation)

    Json 有两种基本的结构,即 Json对象 和 Json 数组。通过 Json 对象和 Json 数组这两种结构的组合可以表示各种复杂的结构,今天通过本文给大家介绍JavaScript Object Notation的基本知识,感兴趣的朋友一起看看吧
    2021-10-10
  • js闭包用法实例详解

    js闭包用法实例详解

    这篇文章主要介绍了js闭包用法,结合实例形式分析了JS闭包的概念、功能及相关操作技巧,需要的朋友可以参考下
    2016-12-12
  • JS实现随机乱撞彩色圆球特效的方法

    JS实现随机乱撞彩色圆球特效的方法

    这篇文章主要介绍了JS实现随机乱撞彩色圆球特效的方法,可实现彩色小球的碰撞效果,涉及随机函数与页面样式的操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-05-05

最新评论