public static function query($sql) { $db = DBLayer::connect(); $return = mysql_query($sql, $db); if (!$return) { Makiavelo::info("Error on MYSQL Query:: " . mysql_error()); } return $return; }
public function execute($params) { Makiavelo::info("Creating Database..."); $sql_folder_path = ROOT_PATH . Makiavelo::SQL_CREATE_TABLES_FOLDER; Makiavelo::puts("Creating database..."); $conn = DBLayer::connect(); $db_name = DBLayer::getDBName(); $sql = "CREATE DATABASE `{$db_name}`"; if (!mysql_query($sql, $conn)) { Makiavelo::info("ERROR creating db: " . mysql_error()); } //We also have to create the migrations table $sql_migrations = "CREATE TABLE migrations ( migration INT PRIMARY KEY);"; mysql_select_db($db_name); if (!mysql_query($sql_migrations, $conn)) { Makiavelo::info("ERROR creating migrations table:: " . mysql_error()); } DBLayer::disconnect($conn); }
private function loadEntities() { $sql_folder_path = ROOT_PATH . Makiavelo::SQL_CREATE_TABLES_FOLDER; $d = dir($sql_folder_path); while (($item = $d->read()) != false) { if ($item != "create_db.sql" && substr($item, 0, 1) != ".") { $file_path = $sql_folder_path . "/" . $item; $fp = fopen($file_path, "r"); if ($fp) { Makiavelo::puts("Loading entity: {$item} ..."); $conn = DBLayer::connect(); $sql = fread($fp, filesize($file_path)); fclose($fp); $res = mysql_query($sql, $conn); if (!$res && mysql_errno($conn) == 1050) { Makiavelo::puts("---- Entity already loaded, ignoring"); } DBLayer::disconnect($conn); } } } }
spl_autoload_register('__autoload_entities'); spl_autoload_register('__autoload_validator'); spl_autoload_register('__autoload_tasks'); spl_autoload_register('__autoload_lib'); include_once ROOT_PATH . "/core/spyc.php"; include_once ROOT_PATH . "/config/config.php"; //Includes all sql helpers $sql_helper_folder = ROOT_PATH . Makiavelo::SQL_HELPERS_FOLDER; $d = dir($sql_helper_folder); while (false !== ($entry = $d->read())) { if ($entry[0] != ".") { include $sql_helper_folder . "/" . $entry; } } //DB connection... simple for now... $__db_conn = DBLayer::connect(); $parameters = $argv; if (count($parameters) > 1) { $mk = new Makiavelo(); $action = $mk->getAction($parameters[1]); unset($parameters[0]); unset($parameters[1]); $action->execute(array_values($parameters)); } else { echo "Welcome to Makiavelo command line utility"; echo "\nUsage: makiavelo [COMMAND] [ATTRIBUTES] \n"; echo "\nValid commands:"; echo "\n g: Generator command"; echo "\n Attributes:"; echo "\n crud: Generates a controller, an entity and a set of views for the CRUD operations. Needs a name for the entity"; echo "\n controller: Generates an empty controller. Needs a controller name as parameter";