JSQL 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);

  ?>