Собственно пытаюсь вспомнить все это и возник такой вопрос.
Сделал класс, в котором есть метод добавления записи в БД
$gb->add_user('TESt1','ddd','ttest');
$gb->add_user('TESt2','ddd','ttest2');
Вызываю метод. Первая строка добавляется, вторая нет. Почему такое может быть?
Примечание:
И где прочитать про обработку вывода ошибок посредством вот такого кода
if(!is_resource($result)) {
throw new Exeption('Ошибка добавления');
Примечание:
ddd - это пароль.
Лог
[Thu Jan 07 12:05:24 2010] [error] [client 195.131.162.110] PHP Fatal error: Class 'Exeption' not found in /home/sdelfi/public_html/files/gb/index.php on line 31
Как вытащить ошибку, которую mysql выдает в данном случае?
Примечание:
public function add_user($ulogin,$upass,$uname) {
//$this->_DB_connect
$query = "INSERT INTO `DF_Users`
(`id` , `login` , `pas` , `ratio` ,`name` )
VALUES ('', '$ulogin', PASSWORD( '$upass' ) , '0', '$uname');";
$result = mysql_query($query);
if(!is_resource($result)) {
throw new Exeption('Ошибка добавления');
}
}
Примечание:
Есть... До этого оставалось поле пустым. При обновлении страницы он опять же выполняет только добавление одной записи, т.е. ошибок в структуре БД нет, как понимаю..
Примечание:
die('error :' . mysql_error());
не выводит саму ошибку..
даже если die('error :' . mysql_error($result));
Примечание:
Вернее mysql_error($переменная подключения));
Примечание:
public function add_user($ulogin,$upass,$uname) {
//$this->_DB_connect
$query = "INSERT INTO `DF_Users`
(`id` , `login` , `pas` , `ratio` ,`name` )
VALUES ('', '$ulogin', PASSWORD( '$upass' ) , '0', '$uname');";
$result = mysql_query($query, $this->_DB_connect);
echo mysql_errno($this->_DB_connect) . ": " . mysql_error($this->_DB_connect) . "\n";
//if(!is_resource($result)) {
//die(mysql_error($this->_DB_connect));
//throw new Exeption('Ошибка добавления');
//}
}
Сделал так
Идет вывод
0: 0: 0: 0: 1 - ttest - 7b17bc5522ac2590 - TESt1
2 - ttest2 - 7b17bc5522ac2590 - TESt2
3 - ttest - 7b17bc5522ac2590 - TESt1
4 - ttest - 7b17bc5522ac2590 - TESt1
5 - ttest - 7b17bc5522ac2590 - TESt1
14 - ttest - 7b17bc5522ac2590 - TESt1
15 - ttest - 7b17bc5522ac2590 - TESt1
Вот это вывод ошибок идет
0: 0: 0: 0:
Это значит их нет?
Примечание:
Вывод идет в браузер, обычный вызов методов. В целом картинка более менее разъяснилась, после замены throw new Exeption('Ошибка добавления'); на друго вывод все стало хорошо. Но хочется использовать новые вещи, поэтому буду разбираться в сторону обработки ошибок...
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.