Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagephp
$m_db = new stdClass();
$m_db->connection = NULL;
$m_db->user = "user name";
$m_db->userpasswd = "user password";
$m_db->database = "database name";

function mydb_open()
{
	global $m_db;

	if ($m_db->connection==NULL) try {
    $dsn = 'mysql:host=localhost;dbname=' . $m_db->database . ';charset=utf8';
    $m_db->connection = new PDO($dsn, $m_db->user, $m_db->userpasswd);
  }
  catch (PDOException $exc) {
    $m_db->connection = NULL;
    echo "DB open failure!!";
    exit;
  }

  return $m_db->connection;
}

function mydb_close()
{
  global $m_db;

  $m_db->connection=NULL;
}

function mydb_execl( $sql, $debug=0)
{
	global $m_db;

	$ret=0;
	if (mydb_open()) {
		$pResult=$m_db->connection->exec( $sql);
		if ($pResult) {
			$ret=1;
		}
	}
    else {
		$ret=0;
    }
	mydb_close();

	return $ret;
}

function mydb_query_full($sql, &$columnName, $debug=0)
{
  global $m_db;

  KTRACE( "[{$m_db->database}] sql = $sql", $debug);

  if (mydb_open()) {

    if ($debug) echo "db open - ok<br>\n";
    $select = $m_db->connection->query($sql);

    $ret=null;
    if ($select) {
		if ($debug) echo "db query - ok<br>\n";

		if (!$columnName) {
			// get query result
		while( $row = $select->fetch()) $ret[] = $row;


		// check column information
		$sql = preg_replace( "/ limit(.*)/", "", $sql) . " limit 1";
		$select = $m_db->connection->query($sql);

		if ($debug) echo "Checking column name<br>\n";
			$columnName = array_keys($select->fetch(PDO::FETCH_ASSOC));
			if ($debug) {
		      	echo "<pre>";
				var_dump($columnName);
				echo "</pre>";
			}
		}

		// get query result
		while( $row = $select->fetch()) $ret[] = $row;
    }
    mydb_close();

    if ($debug) {
    	echo "Query result:<br>\n";
      	echo "<pre>";
		var_dump($ret);
		echo "</pre>";
    }

    if ($debug && is_array($ret)) echo "result count  = " . count($ret) . "<br>\n";

    return $ret;
  }
  else {
  	KTRACE( "return value for query execution is null - original query: $sql", $debug);
  	return null;
  }
}