parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ошибка подключения к БД

Mizter Egoist 07.01.2016 23:07

Здравствуйте!
Пишу первичную установку.
Ниже код:
$find_connect[^file:find[/conf/connect.cfg]]
^if($find_connect eq '/conf/connect.cfg'){
	$load_connect[^table::load[/conf/connect.cfg]]
	^if(def $load_connect.string){
		$connect_string[$load_connect.string]
	}
	$create_connect[^connect[$connect_string]{
		^void:sql{
			CREATE TABLE IF NOT EXISTS `site` (
				`id` INT NOT NULL AUTO_INCREMENT,
				`logo` char(255) NOT NULL,
				`name` char(255) NOT NULL,
				`email` char(255) NOT NULL,
				`catchword` char(255) NOT NULL,
				`keywords` TEXT NOT NULL,
				`description` TEXT NOT NULL,
				`phonenumber` char(64) NOT NULL,
				`address` TEXT NOT NULL,
				`gps_width` char(64) NOT NULL,
				`gps_length` char(64) NOT NULL,
				PRIMARY KEY(id)
			) ENGINE=InnoDB DEFAULT CHARSET=utf8;
		}
	}]
	^if($create_connect){
		^file:delete[/install.html]
		$response:refresh[
			$.value(0)
			$.url[/]
		]
	}
}{
	<div id="connect">
		<form id="connectForm" name="connectForm" method="POST" accept-charset="UTF-8">
			<input type="text" name="db_user" placeholder="Username" required>
			<input type="text" name="db_pass" placeholder="Password" required>
			<input type="text" name="db_host" placeholder="Host" required>
			<input type="text" name="db_name" placeholder="Name" required>
			<input type="submit" name="db_connect" value="Crete connection">
		</form>
	</div>
	^if(def ${form:db_user} && def ${form:db_pass} && def ${form:db_host} && def ${form:db_name} && def ${form:db_connect}){
		$connect[^table::create{string}]
		^connect.append{mysql://${form:db_user}:${form:db_pass}@${form:db_host}/${form:db_name}?charset=utf8}
		^connect.save[/conf/connect.cfg]
		$response:refresh[
			$.value(0)
			$.url[^taint[as-is][$request:uri]]
		]
	}
}
Суть в том, что строка подключения храниться в файле, если файл не найден, мы его создаем, если найден, берем от туда строку подключения и создаем таблицы.
Пробовал подключаться без использования файла, сразу записывать в переменную строку подключения, результат везде одинаковый.
Ниже ошибка:

/install.html(8:26): 'mysql://****@rumysql1.activeby.net/geekco?charset=utf8' Access denied for user 'mizter'@'localhost' (using password: YES) [sql.connect]

При этом и логин и пароль и хост и имя БД есть и все должно по логике работать.