Написал функцию подключения к MySQL, посмотрите пожалуйсто что можно добавить, а что убрать, как вам сома идея?
function connect_sql($sql_host, $sql_port, $sql_login, $sql_pass, $sql_db_name)
{
if($sql_port != ''){
$sql_server_name = $sql_host.':'.$sql_port;
}else{
$sql_server_name = $sql_host;
}
$conect_sql = @mysql_connect($sql_server_name, $sql_login, $sql_pass);
$select_db = @mysql_select_db($sql_db_name, $conect_sql);
if(!$conect_sql){
$number_error = "2";
return $number_error;
exit();
}
if(!$select_db){
$number_error = "3";
return $number_error;
mysql_close($conect_sql);
exit();
}
return 1;
}
Спустя 10 минут, 17 секунд (31.01.2011 - 01:29) ASerputko написал(а):
я б добавил установку кодировки
mysql_query('SET NAMES utf8');
mysql_query('SET CHARACTER SET utf8');
mysql_query('SET COLLATION_CONNECTION="utf8_general_ci"');
Спустя 2 минуты, 13 секунд (31.01.2011 - 01:32) Sound написал(а):
ASerputko
Отличная идея! Спасибо!
Какие могут быть ещё соображения?
Отличная идея! Спасибо!
Какие могут быть ещё соображения?
Спустя 6 минут, 43 секунды (31.01.2011 - 01:38) ASerputko написал(а):
я юзаю такой вариант
<?php
define('DBSERVER', 'localhost');
define('DBUSER', 'root');
define('DBPASSWORD', '');
define('DATABASE', 'test');
define('DB_NO_CONNECT', 'В настоящий момент сервер базы данных не доступен, поэтому корректное отображение страницы невозможно.');
define('DB_NO_SELECT', 'В настоящий момент база данных не доступна,
поэтому корректное отображение страницы невозможно.');
class MySqlConnect{
static private $connect = NULL;
private function __construct(){
$db_connect = mysql_connect(DBSERVER,
DBUSER,
DBPASSWORD)
or die(DB_NO_CONNECT);
mysql_select_db(DATABASE, $db_connect) or die(DB_NO_SELECT);
mysql_query('SET NAMES utf8');
mysql_query('SET CHARACTER SET utf8');
mysql_query('SET COLLATION_CONNECTION="utf8_general_ci"');
}
private function __clone(){}
static public function getConnect(){
if(self::$connect == NULL){
self::$connect = new self();
}
return self::$connect;
}
}
MySqlConnect::getConnect();
Спустя 11 минут, 52 секунды (31.01.2011 - 01:50) Sound написал(а):
Не плохо!
Я ещё хочу сделать отдельный обработчик ошибок для всего сайта!
Поэтому у меня функция возращает число которое может евлятся ошибкой!
Я ещё хочу сделать отдельный обработчик ошибок для всего сайта!
Поэтому у меня функция возращает число которое может евлятся ошибкой!
Спустя 7 часов, 36 минут, 59 секунд (31.01.2011 - 09:27) linker написал(а):
Sound
Здесь
Здесь
$conect_sql = @mysql_connect($sql_server_name, $sql_login, $sql_pass);очень странно, ты сначала подключаешься, потом выбираешь базу и только потом проверяешь, а был ли вообще коннект. Убирай в топку @, делай нормальную проверку на ошибки: в момент подключения и в момент выбора базы данных.
$select_db = @mysql_select_db($sql_db_name, $conect_sql);
if(!$conect_sql){
$number_error = "2";
return $number_error;
exit();
}...