<?php
class SqlTools{
private $con;
private $trans;
public function __construct($host, $user, $pswd, $db){
$this->con = new mysqli($host, $user, $pswd, $db);
if($this->con->connect_error)
die("CONNECT ERROR:".$this->con->connect_errno.":".$this->con->connect_error."<br/>");
$this->con->query("set names utf8");
}
/*start transaction*/
public function start_trans(){
$this->con->autocommit(false);
$this->trans = true;
}
/*rollback*/
public function rollback(){
$this->con->rollback();
}
/*add, insert, update and so on*/
public function execute($sql){
$exec_bool = $this->con->query($sql);
if($exec_bool)
die("EXEC ERROR:".$this->con->errno.":".$this->con->error."<br/>");
return $this->con->affected_rows;
}
/*select*/
public function &execute_query($sql){
$res = $this->con->query($sql);
if(!$res)
die("QUERY ERROR:".$this->con->errno.":".$this->con->error."<br/>");
return $res;
}
/*free resource*/
public function close(){
if($this->trans)
$this->rollback();
if($this->con)
$this->con->close();
}
}