mysql语句在线生成网站_MYSQL语句生成器

看到一位网友用JS做了一个这样一个类似的东西,于是试着用PHP试试看效果。 多提意见,谢谢! MYSQL语句生成器 2005-01-11 初步模型 2005-01-13 修改了可以输入数字及数字为开头的表名、字段和主键的BUG 2005-01-17 加入代码生成历史记录下拉菜单,加入数据库

看到一位网友用JS做了一个这样一个类似的东西,于是试着用PHP试试看效果。

多提意见,谢谢!

MYSQL语句生成器

2005-01-11 初步模型

2005-01-13 修改了可以输入数字及数字为开头的表名、字段和主键的BUG

2005-01-17 加入代码生成历史记录下拉菜单,加入数据库连接部分,并重新修改整体程序模块

源代码:

====================

if($_POST){

if(array_key_exists("tbl_name", $_POST)){

$tbltemp = $_POST["tbl_name"];

$_POST = $_SESSION["phpcode"][$_POST["tbl_name"]];

//print_r($_SESSION["phpcode"]);

}else{

$_SESSION["phpcode"][$_POST["tbl"]] = $_POST;

}

$code[0] = createcode($_POST, 0);//插入语句

$code[1] = createcode($_POST, 1);//选择语句

$code[2] = createcode($_POST, 2);//更新语句

$typein = $_POST["outtype"];

foreach($typein as $val){

$js .= "code[/"outtype[]/"][".$val."].checked = true;/n";

}

echo "";

}

//创建历史下拉菜单

if(!empty($_SESSION["phpcode"])){

foreach(array_filter(array_reverse($_SESSION["phpcode"])) as $key => $val){

$tbl_list .= "".$key."";

}

}

/*

* 生成语句函数

*/

function createcode($ar, $type = 0){

switch($type){

case 1://选择语句处理

$sql = "/$sql = /"SELECT ".fieldlist($ar["fieldlist"])." /nFROM `".$ar["tbl"]."` ".where($_POST["keyword"])."/";/n";

break;

case 2://更新语句处理

$sql = "/$sql = /"UPDATE `".$ar["tbl"]."` SET ".fieldlist($ar["fieldlist"], 2)." ".where($_POST["keyword"])." LIMIT 1/";/n";

break;

default://插入语句处理

$sql = "/$sql = /"INSERT INTO `".$ar["tbl"]."`(".fieldlist($ar["fieldlist"]).")/nVALUES(".fieldlist($ar["fieldlist"], 1).")/";/n";

}

if($ar["codetype"]){//输出PHPLIB

$sql = "include(/"inc/db_mysql.inc/");//包括MYSQL操作类/n/$db = new DB_Sql;//定义类/n/$db->connect();//连接数据库/n/n".$sql;

$sql .= "/$db->query(/$sql);/n";

}else{

$sql = "/* 连接数据库 *//n/$conn = mysql_pconnect(/"localhost/", /"username/", /"password/") or die(/"不能连接数据库:/".mysql_error());/n/* 选择数据库 *//nmysql_select_db(/"mysql_database/") or die(/"不能选择数据库/");/n/n".$sql;

$sql .= "/$result = mysql_query(/$sql);/n";

}

return $sql;

}

/*

* 字段处理

*/

function fieldlist($fieldstr, $type = 0){

$str = "";

$tstr = split(",", $fieldstr);

foreach($tstr as $val){

switch($type){

case 1://用在插入语句中

if($str) $str .= ", ";

$str .= "'/"./$_POST[/"".trim($val)."/"]./"'";

break;

case 2://用在更新语句中

if($str) $str .= ", /n";

$str .= "`".trim($val)."` = '/"./$_POST[/"".trim($val)."/"]./"'";

break;

default:

if($str) $str .= ", ";

$str .= "`".trim($val)."`";

}

}

return $str;

}

function where($keyword){

return "/nWHERE `$keyword` = '/"./$_POST[/"".$keyword."/"]./"'";

}

?>

MYSQL语句生成器if($tbl_list){

?>

= $tbl_list?>

}

?>

表名:

字段列表:

用逗号(,)分开各字段

主键字段:

代码类型:

一般代码

PHPLIB

输出类型:

插入

选择

更新

/n");

}

}

?>

f68f2add0b68e4f9810432fce46917b7.png

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

你可能感兴趣的:(mysql语句在线生成网站)