[eluser]Unknown[/eluser]
ok i got this modle
Code:
<?php
if (! defined ( 'BASEPATH' ))
exit ( 'No direct script access allowed' );
if (! defined ( 'tag_sql_enables' )) {
define ( 'tag_sql_user', '{user}' );
define ( 'tag_sql_pass', '{pass}' );
define ( 'tag_sql_email', '{email}' );
define ( 'tag_sql_fullname', '{fullname}' );
define ( 'tag_sql_prefix', '{dbPrefix}' );
define ( 'tag_sql_enables', true );
}
class Sqlinstaller extends Model {
private $dbFile;
private $user;
private $pass;
private $email;
private $fullName;
private $dbPrefix;
public function __construct() {
parent::Model ();
//$this->load->library('database');
$this->load->database ();
$this->dbFile = APPPATH . '/models/sqlinstall/dump/db.sql';
}
//{dbPrefix},{user},{pass},{email},{fullname}
public function SetParams($user, $pass, $email, $fullName, $dbPrefix) {
$this->user = $user;
$this->pass = dohash ( $pass );
$this->email = $email;
$this->fullName = $fullName;
$this->dbPrefix = $dbPrefix;
}
public function LoadDb() {
$sqlContent = self::_loadDbFile ();
$returnValue = self::_execSqlContent ( $sqlContent );
var_dump ( $returnValue );
return $returnValue;
}
private function _loadDbFile() {
$fileContent = "";
if (file_exists ( $this->dbFile ))
self::parse_mysql_dump ( $this->dbFile );
return ($fileContent);
}
private function _convertSql($fileContent) {
$fileContent = eregi_replace ( tag_sql_user, $this->user, $fileContent );
$fileContent = eregi_replace ( tag_sql_pass, $this->pass, $fileContent );
$fileContent = eregi_replace ( tag_sql_email, $this->email, $fileContent );
$fileContent = eregi_replace ( tag_sql_fullname, $this->fullName, $fileContent );
$fileContent = eregi_replace ( tag_sql_prefix, $this->dbPrefix, $fileContent );
return $fileContent;
}
private function _execSqlContent($sqlData) {
$this->db->query ( $sqlData );
if ($this->db->affected_rows () == 4)
return true;
return false;
}
private function parse_mysql_dump($url) {
$handle = @fopen ( $url, "r" );
$query = "";
while ( ! feof ( $handle ) ) {
$sql_line = fgets ( $handle );
if (trim ( $sql_line ) != "" && strpos ( $sql_line, "--" ) === false) {
$query .= $sql_line;
if (preg_match ( "/;[\040]*\$/", $sql_line )) {
$query = self::_convertSql ( $query );
$result = self::_execSqlContent ( $query );
$query = "";
}
}
}
}
}
?>
when i run the function LoadDb()
i got this error
Quote:A Database Error Occurred
The query you submitted is not valid.
but the sql is running
after checked the mysql logs no errors founds if need any file let me know