| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Oleg 31.05.2007 15:29
Вот код:^db.menu{
$r_connect_string[mysql://$db.login:${db.password}@$db.host/$db.db_name?charset=cp1251_koi8]
# Поскольку я перебираю несколько баз, некоторые могут
# оказаться недоступны по разным причинам.
# Например нет интернета.
# Именно по этой причине я здесь ловлю ошибку.
# Которой в нормальных условиях нет.
# Я рассматриваю нормальные условия когда подключение есть и всё ОК
# В случае если я отключаю обработку ошибок всё работает
# нормально, как задумано
# В случае если оставить обработку, то выскакивает ожидаемая ошибка
^try{
^connect[$r_connect_string]{$test(^int:sql{SELECT 4-3})}
^if($test == 1){
^vTestDb[$db.uid]
}
}{
# В следующей строке указано какую именно ошибку я ожидаю, а именно "sql.connect"
^if($exception.type eq sql.connect){
$exception.handled(true)
}
}
}Рабочий вариант кода, закоментирован #^try{#}{#} ^db.menu{
$r_connect_string[mysql://$db.login:${db.password}@$db.host/$db.db_name?charset=cp1251_koi8]
# ^try{
^connect[$r_connect_string]{$test(^int:sql{SELECT 4-3})}
^if($test == 1){
^vTestDb[$db.uid]
}
# }{
^if($exception.type eq sql.connect){
$exception.handled(true)
}
# }
}Встречный вопрос, какая ошибка может быть в логе если я её обрабатываю?