Author |
Message |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Tue Oct 26, 2010 8:48 pm (написано за 1 минуту 44 секунды)
Post subject:
|
|
vik76
Правильно выдает, метод объявлен как protected Зачем его вам вызывать, если третьим параметром передается результат его вызоваВот и все
|
|
Back to top |
|
 |
onesfinks
Guest
Карма: 388 поощрить/наказать
|
Posted: Wed Oct 27, 2010 7:35 am (спустя 10 часов 46 минут; написано за 39 секунд)
Post subject:
|
|
Ivan1986
Я так пониманию ваша версия тоже не поддерживает хранимые процедуры MySQL?
|
|
Back to top |
|
 |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Wed Oct 27, 2010 7:55 am (спустя 20 минут; написано за 46 секунд)
Post subject:
|
|
onesfinks
поддерживает, если использовать PDO(mypdo), а не mysql тут зависит исключительно от либы
|
|
Back to top |
|
 |
onesfinks
Guest
Карма: 388 поощрить/наказать
|
Posted: Wed Oct 27, 2010 9:08 am (спустя 1 час 13 минут; написано за 1 минуту 29 секунд)
Post subject:
|
|
Ivan1986
Спасибо за быстрый ответ. А то встал перед выбором отказаться от ХП или переводить проект (работа над которым уже вовсю идёт) на другую библиотеку. Теперь я спокоен :)
|
|
Back to top |
|
 |
vik76
Заглянувший
Joined: 26 Oct 2010
Posts: 10
Карма: 0 поощрить/наказать
|
Posted: Wed Nov 03, 2010 5:32 pm (спустя 7 дней 8 часов 23 минуты; написано за 6 минут 19 секунд)
Post subject:
|
|
Ivan1986
Большое спасибо за помощь, библиотеку подключил, работает. Может где-то есть описание изменений по сравнению с оригинальной версией? Обновляю библиотеку, где работаю с фаирбердом. Столкнулся с такими ошибками: Deprecated: Assigning the return value of new by reference is deprecated in /DbSimple/Generic.php on line 116 это либо можно исправить, либо вообще не использовать этот пхп я правильно понял, что он теперь не нужен, если использовать так? require_once "DbSimple/Connect.php"; $DB = new DbSimple_Connect("pgsql://login:password@host/database"); Fatal error: Declaration of DbSimple_Ibase::_performNewBlob() must be compatible with that of DbSimple_Database::_performNewBlob() in /DbSimple/Ibase.php on line 34 function& _performNewBlob($blobid=null) - здесь просто амперсанд лишний? function _performNewBlob($blobid=null) - должно быть так?
|
|
Back to top |
|
 |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Thu Nov 04, 2010 10:41 am (спустя 17 часов 8 минут; написано за 3 минуты 51 секунду)
Post subject:
|
|
vik76
Описания изменений к сожалению нету, могу что нужно рассказать или есть вариант посмотреть по git log. Если по изменениям кто-то поправит доку, то будет очень здорово. Ошибки поправил, спасибо. По поводу DbSimple_Connect - да, Generic не нужен, он оставлен для совместимости, я его особо и не тестировал. Если вы работаете с Ibase, то отлично, хотя-бы протестируете, я ни Ibase ни Postgresql не трогал, просто поправил что есть, так как просто не работал с ними.
|
|
Back to top |
|
 |
vik76
Заглянувший
Joined: 26 Oct 2010
Posts: 10
Карма: 0 поощрить/наказать
|
Posted: Tue Dec 07, 2010 7:15 pm (спустя 1 месяц 3 дня 8 часов 34 минуты; написано за 3 минуты 57 секунд)
Post subject:
|
|
Подскажите, где проблема? словил нотис PHP Notice: Undefined property: DbSimple_Connect::$error in ... ругается на if(!$DB->error){ переделал на так if(empty($DB->error)){ Что не так? смотрел объект $DB в этот момент, показывает error = null вроде как есть, пусть и null
|
|
Back to top |
|
 |
Александр Михалицын
Модератор
Joined: 23 May 2008
Posts: 1299
Карма: 83 поощрить/наказать
|
Posted: Tue Dec 07, 2010 7:24 pm (спустя 9 минут; написано за 1 минуту 46 секунд)
Post subject:
|
|
vik76, а вопрос-то в чем? Notice перевели?
|
|
Back to top |
|
 |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Wed Dec 08, 2010 11:41 am (спустя 16 часов 16 минут; написано за 1 минуту 47 секунд)
Post subject:
|
|
vik76
Вообще-то этого свойства нету - оно только в DbSimple_LastError, но с учетом того что есть обработчик ошибок зачем так извращаться я не понимаю. причем если отключен обработчик при ошибке возвращается false. a null потому, что что ему еще остается
|
|
Back to top |
|
 |
Guest
Карма: 388 поощрить/наказать
|
Posted: Wed Dec 08, 2010 1:14 pm (спустя 1 час 33 минуты; написано за 5 минут 24 секунды)
Post subject:
|
|
Ivan1986
Возможно я идеологически не правильно делаю, тогда поправьте пожалуйста. Я делаю какое-либо действие с базой, после чего проверяю значение в error. В зависимости от наличия/отсутствия ошибки, строится дальнейшая логика работы скрипта. Ошибки нужно проверять каким-то другим способом?
|
|
Back to top |
|
 |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Wed Dec 08, 2010 5:29 pm (спустя 4 часа 14 минут; написано за 2 минуты 29 секунд)
Post subject:
|
|
Во первых можно установить обработчик ошибок, который может делать что угодно - ему приходит контекст, запрос и прочее В классе Connect устанавливается дефолтовый обработчик - вывод ошибки и die если установить обработчик в false, то он не вызовется, а функция при ошибке вернет false вот собственно и все, а переменной в классе нету
|
|
Back to top |
|
 |
Mushu777
Guest
Карма: 388 поощрить/наказать
|
Posted: Sun Dec 19, 2010 6:14 pm (спустя 11 дней 45 минут; написано за 22 секунды)
Post subject: Заключение лицензионного соглашение на право использования библиотеки DbSimple
|
|
Добрый день. Хочу узнать, вы готовы заключит лицензионное соглашение на право использования библиотеки DbSimple, в составе другого коммерческого ПО и какая будет сумма лиц. вознаграждения и порядок его уплаты ?
|
|
Back to top |
|
 |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Sun Dec 19, 2010 9:50 pm (спустя 3 часа 36 минут; написано за 2 минуты 30 секунд)
Post subject:
|
|
Mushu777
Как-бы и в оригинальной и в моей версии лицензия на библиотеку - LGPL, так что вы можете ее использовать просто так даже в составе коммерческого ПО. Если нужна техподдержка - особенно по новым функциям в моей версии, так как она не очень документирована, то с радостью подскажу что нужно - пишите (контакты в профиле согласно правилам форума)
|
|
Back to top |
|
 |
Guest
Карма: 388 поощрить/наказать
|
Posted: Tue Mar 01, 2011 6:19 am (спустя 2 месяца 9 дней 8 часов 28 минут; написано за 21 секунду)
Post subject:
|
|
Есть ли обновление для работы с пхп 5.3? Quote: |
Assigning the return value of new by reference is deprecated in |
|
|
Back to top |
|
 |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Thu Apr 14, 2011 11:20 pm (спустя 1 месяц 13 дней 17 часов 1 минуту; написано за 1 минуту 3 секунды)
Post subject:
|
|
vik76
По поводу нотайса - да, косяк - через коннект до него нельзя достучаться, плюс при сбросе обработчика после ошибки возможно падение пофиксил Гость
Как-бы уже давно
|
|
Back to top |
|
 |
cybd
Заглянувший
Joined: 02 Jul 2005
Posts: 4
Карма: 3 поощрить/наказать
Location: Kyiv, Ukraine
|
Posted: Fri Apr 15, 2011 5:37 pm (спустя 18 часов 17 минут; написано за 3 минуты 42 секунды)
Post subject:
|
|
Ребята, подскажите пожалуйста, можно ли с помощью библиотеки написать такой запрос: Code (SQL): | скопировать код в буфер обмена | INSERT INTO table_name(id, name, val) VALUES(1,2,3),(4,5,6),(7,8,9); | Чтобы не копипастить такой код: Code (php): | скопировать код в буфер обмена | $data_arr = array (www.php.net/array)('id'=>1, 'name'=>2, 'val'=>3); $DB->query('INSERT INTO table_name(?#) VALUES(?a)', array_keys (www.php.net/array_keys)($data_arr), array_values (www.php.net/array_values)($data_arr)); | Спасибо. Updated. Попытка не увенчалась успехом: Code (php): | скопировать код в буфер обмена | $data_row = array (www.php.net/array)( 0 => array (www.php.net/array)( 'param_id' => '2', 'project_id' => $last_insert_id, 'value' => $user_id ), 1 => array (www.php.net/array)( 'param_id' => '3', 'project_id' => $last_insert_id, 'value' => $user_id ), 2 => array (www.php.net/array)( 'param_id' => '4', 'project_id' => $last_insert_id, 'value' => $user_id ) ); $DB->query('INSERT INTO ?_param_values(?#) VALUES(?a)', array_keys (www.php.net/array_keys)($data_row), array_values (www.php.net/array_values)($data_row)); |
|
|
Back to top |
|
 |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Fri Apr 15, 2011 10:47 pm (спустя 5 часов 9 минут; написано за 8 секунд)
Post subject:
|
|
Почти правильно Code (php): | скопировать код в буфер обмена | query('INSERT INTO ?_param_values(?#) VALUES(?a)', array_keys (www.php.net/array_keys)($data_row[0]), array_values (www.php.net/array_values)($data_row)); |
|
|
Back to top |
|
 |
cybd
Заглянувший
Joined: 02 Jul 2005
Posts: 4
Карма: 3 поощрить/наказать
Location: Kyiv, Ukraine
|
Posted: Sun Apr 17, 2011 11:45 am (спустя 1 день 12 часов 58 минут; написано за 1 минуту 45 секунд)
Post subject:
|
|
Ivan1986
К сожалению не получилось. Выводит ошибку при попытке вставки пустых значений. Пробовал еще и так Code (php): | скопировать код в буфер обмена | query('INSERT INTO ?_param_values(?#) VALUES(?a)', array_keys (www.php.net/array_keys)($data_row[0]), array_values (www.php.net/array_values)($data_row[0])); | в таком случае выполняется только одна вставка. Updated. Сделал так: Code (php): | скопировать код в буфер обмена | query('INSERT INTO ?_param_values(?#) VALUES(?a)', array_keys (www.php.net/array_keys)($data_row[0]), array_values (www.php.net/array_values)($data_row[0])); query('INSERT INTO ?_param_values(?#) VALUES(?a)', array_keys (www.php.net/array_keys)($data_row[1]), array_values (www.php.net/array_values)($data_row[1])); query('INSERT INTO ?_param_values(?#) VALUES(?a)', array_keys (www.php.net/array_keys)($data_row[2]), array_values (www.php.net/array_values)($data_row[2])); |
|
|
Back to top |
|
 |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Sun Apr 17, 2011 4:24 pm (спустя 4 часа 38 минут; написано за 1 минуту 26 секунд)
Post subject:
|
|
cybd
Нет, неправильно, нужно сделать именно как написал я. Вы какую версию библиотеки используете? В первом случае у вас просто одна строка, а во втором по сути цикл с запросами, а нужен мультиинсерт
|
|
Back to top |
|
 |
Guest
Карма: 388 поощрить/наказать
|
Posted: Sun Apr 17, 2011 9:24 pm (спустя 5 часов 13 секунд; написано за 44 секунды)
Post subject:
|
|
Библиотека Mysql @version 2.x $Id: Mysql.php 332 2010-04-12 20:30:14Z dk $
|
|
Back to top |
|
 |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Sun Apr 17, 2011 10:56 pm (спустя 1 час 31 минуту; написано за 13 секунд)
Post subject:
|
|
Мультиинсерт только тут github.com/ivan1986/DbSimple
|
|
Back to top |
|
 |
cybd
Заглянувший
Joined: 02 Jul 2005
Posts: 4
Карма: 3 поощрить/наказать
Location: Kyiv, Ukraine
|
Posted: Mon Apr 18, 2011 9:47 am (спустя 10 часов 50 минут; написано за 7 секунд)
Post subject:
|
|
Спасибо
|
|
Back to top |
|
 |
Дмитрий Герасимов
Заглянувший

Joined: 04 Oct 2008
Posts: 13
Карма: 6 поощрить/наказать
Location: Санкт-Петербург
|
Posted: Tue Apr 19, 2011 8:53 pm (спустя 1 день 11 часов 6 минут; написано за 4 минуты 22 секунды)
Post subject:
|
|
cybd wrote: |
Ребята, подскажите пожалуйста, можно ли с помощью библиотеки написать такой запрос[/php] | Вот тут описано одно из решений forum.dklab.ru/viewtopic.php?p=178151#178151
|
|
Back to top |
|
 |
Guest
Карма: 388 поощрить/наказать
|
Posted: Thu Apr 21, 2011 3:56 pm (спустя 1 день 19 часов 3 минуты; написано за 2 минуты 56 секунд)
Post subject:
|
|
Подскажите, ivan1986, я использовал вашу версию, сейчас обновил библиотеку, поставил от 14 апреля (https://github.com/ivan1986/DbSimple) получаю: Notice: Undefined property: DbSimple_Connect::$_identPrefix in .../DbSimple/Connect.php on line 229 Раньше было так написано $DB->setIdentPrefix('as_'); теперь это не работает...
|
|
Back to top |
|
 |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Thu Apr 21, 2011 11:37 pm (спустя 7 часов 40 минут; написано за 16 секунд)
Post subject:
|
|
Спасибо, исправил ошибку, написал тест
|
|
Back to top |
|
 |
froz
Заглянувший
Warnings: 1
Joined: 03 Jun 2011
Posts: 9
Карма: -3 поощрить/наказать
|
Posted: Tue Jun 07, 2011 1:51 pm (спустя 1 месяц 15 дней 14 часов 13 минут; написано за 1 минуту)
Post subject:
|
|
Что-то не совсем понял про order by делаю постановку ?s но всё равно системе на него фиолетово. Quote: |
$row=$DB->select('SELECT * FROM db_user Order by ?s',$add_sort); |
|
|
Back to top |
|
 |
froz
Заглянувший
Warnings: 1
Joined: 03 Jun 2011
Posts: 9
Карма: -3 поощрить/наказать
|
Posted: Thu Jun 09, 2011 7:52 am (спустя 1 день 18 часов 1 минуту; написано за 3 секунды)
Post subject:
|
|
?..
|
|
Back to top |
|
 |
bæv
Модератор «Дзена»

Joined: 27 Aug 2003
Posts: 7275
Карма: 9989 поощрить/наказать
|
Posted: Thu Jun 09, 2011 11:11 am (спустя 3 часа 19 минут; написано за 14 секунд)
Post subject:
|
|
—  ! |
| forum.dklab.ru/about/todo/PravilaEtogoForuma-ProchitayteObyazatelno.html Quote: |
На форуме запрещается: … … 6. «качать права», требовать немедленного ответа на свой вопрос — Вам тут никто ничего не должен и ничем не обязан! |
|
|
|
Back to top |
|
 |
froz
Заглянувший
Warnings: 1
Joined: 03 Jun 2011
Posts: 9
Карма: -3 поощрить/наказать
|
Posted: Thu Jun 09, 2011 11:45 am (спустя 33 минуты; написано за 14 секунд)
Post subject:
|
|
Я права не качаю и не требую немедленный ответ. 2 дня прошло
|
|
Back to top |
|
 |
vik76
Заглянувший
Joined: 26 Oct 2010
Posts: 10
Карма: 0 поощрить/наказать
|
Posted: Thu Jun 09, 2011 11:50 am (спустя 4 минуты; написано за 8 секунд)
Post subject:
|
|
froz
я вот обычно ставлю просто вопросик (кроме редких исключений) $row=$DB->select('SELECT * FROM db_user Order by ?',$add_sort); лень в мануал лезть, чтоб узнать, что именно символ S означает :) На будущее, почитай как сделать логирование и хакер консоль, это очень полезные вещи при разработке/отладке. С логированием ты сможешь видеть все свои запросы именно так, как они посылаются на сервер. А хакер консоль просто удобно, выводишь в нее всю отладочную информацию, ну к примеру те же запросы.
|
|
Back to top |
|
 |
froz
Заглянувший
Warnings: 1
Joined: 03 Jun 2011
Posts: 9
Карма: -3 поощрить/наказать
|
Posted: Thu Jun 09, 2011 12:23 pm (спустя 33 минуты; написано за 2 минуты 40 секунд)
Post subject:
|
|
фух.. Order by '.$xx1.' помогло Где можно про них прочитать?
|
|
Back to top |
|
 |
vik76
Заглянувший
Joined: 26 Oct 2010
Posts: 10
Карма: 0 поощрить/наказать
|
Posted: Thu Jun 09, 2011 4:38 pm (спустя 4 часа 15 минут; написано за 2 минуты 27 секунд)
Post subject:
|
|
froz
ну можно и так :))) это самый очевидный путь, но не всегда правильный, придется следить за содержимым переменной, иначе может быть секвел иньекция. dklab.ru/lib/DbSimple/
|
|
Back to top |
|
 |
bæv
Модератор «Дзена»

Joined: 27 Aug 2003
Posts: 7275
Карма: 9989 поощрить/наказать
|
Posted: Thu Jun 09, 2011 7:46 pm (спустя 3 часа 8 минут; написано за 1 минуту 6 секунд)
Post subject:
|
|
 ! |
| froz, «апание» темы — это и есть «требование ответа» Получаете предупреждение. |
|
|
Back to top |
|
 |
bæv
Модератор «Дзена»

Joined: 27 Aug 2003
Posts: 7275
Карма: 9989 поощрить/наказать
|
Posted: Tue Jun 14, 2011 4:31 pm (спустя 4 дня 20 часов 44 минуты)
Post subject:
|
|
|
|
Back to top |
|
 |
Ivan1986
Участник форума
Warnings: 2
Joined: 09 Oct 2007
Posts: 807
Карма: 38 поощрить/наказать
|
Posted: Wed Jun 15, 2011 11:12 am (спустя 18 часов 40 минут; написано за 3 минуты 40 секунд)
Post subject:
|
|
vik76
Я так понимаю $add_sort - строка с сортировками К сожалению не поможет - заквотится вся строка ?s это плейсхолдер подзапроса принимает только объект класса DbSimple_SubQuery, который возвращается функцией subquery, которая просто формирует строк запроса и плейсхолдеры. Тоесть можно делать вот так Code (php): | скопировать код в буфер обмена | $add_sort=$DB->subquery('Order by ?#', array (www.php.net/array)($field1,$field2)); $row=$DB->select('SELECT * FROM db_user ?s',$add_sort); |
|
|
Back to top |
|
 |
Gucha
Guest
Карма: 388 поощрить/наказать
|
Posted: Fri Jul 15, 2011 11:03 pm (спустя 1 месяц 11 часов 51 минуту; написано за 1 минуту 48 секунд)
Post subject:
|
|
В новой версии пхп множество функций этой библиотеки стали Deprecated... Имеются ли планы обновить библиотеку и перенести с mysql расширения на mysqli? Я использую эту библиотеку уже много много лет с момента появления версии 2 и очень не хотелось бы писать новую только из-за того что в новой версии пхп она работать уже не будет. В общем мой главный вопрос - имеются ли планы выпустить новую версию библиотеки под новые стандарты пхп?
|
|
Back to top |
|
 |
Александр Михалицын
Модератор
Joined: 23 May 2008
Posts: 1299
Карма: 83 поощрить/наказать
|
Posted: Wed Jul 20, 2011 4:32 pm (спустя 4 дня 17 часов 28 минут; написано за 33 секунды)
Post subject:
|
|
Gucha, официально - очень сомневаюсь. Но насколько я помню у товарища Ivan1986 есть неплохой форк. https://github.com/DmitryKoterov/DbSimple - вот тут посмотрите форки.
|
|
Back to top |
|
 |
Gucha
Guest
Карма: 388 поощрить/наказать
|
Posted: Thu Jul 21, 2011 10:08 am (спустя 17 часов 36 минут; написано за 1 минуту 29 секунд)
Post subject:
|
|
Спасибо за инфу по форкам, сам даже как-то не догадался посмотреть сразу... Сейчас глянул на существующие форки, насколько могу видеть ни одна из них пока не мигрировала на новые стандарты, но по крайней мере есть надежда что это произойдет теперь. Но... хотелось бы конечно чтобы автор это сам доработал :)
|
|
Back to top |
|
 |
duke333
Guest
Карма: 388 поощрить/наказать
|
Posted: Mon Jul 25, 2011 7:49 am (спустя 3 дня 21 час 40 минут; написано за 4 минуты 11 секунд)
Post subject: Select из разных таблиц с одинаковым полем
|
|
Таблицы (service, excursion, accommodation, foreign_country) имеют одинаковое поле "title" Code (php): | скопировать код в буфер обмена | $order_item_date = $DB->query('SELECT * FROM order_item oi LEFT JOIN service s on s.id_s = oi.id_item and oi.item_type = "service" LEFT JOIN excursion e on e.id_e = oi.id_item and oi.item_type = "excursion" LEFT JOIN accommodation a on a.id_a = oi.id_item and oi.item_type = "accommodation" LEFT JOIN foreign_country fc on fc.id_fc = oi.id_item and oi.item_type = "foreign_country" WHERE oi.id_order = ? ORDER BY oi.item_index', $id_order); | при выполнении данного запроса в переменной $order_item_date только для (service - т.е. первой по очереди в запросе) есть значение этого поля а для осталных NULL хотя при выполнении запроса на mysql servere данные есть Как это решить ?
|
|
Back to top |
|
 |
samulet
Заглянувший
Warnings: 1
Joined: 22 Apr 2011
Posts: 6
Карма: -2 поощрить/наказать
|
Posted: Sun Jul 31, 2011 4:08 pm (спустя 6 дней 8 часов 19 минут; написано за 2 минуты 7 секунд)
Post subject: Прошу помочь с ошибкой.
|
|
Чувствую, что за мой вопрос строгие модеры выкатят мне очередное предупреждение. Прошу не судить строго. Спасибо. У меня ошибка: Array ( [code] => 1054 [message] => Unknown column 'delivery_conditions.lp_id' in 'where clause' [query] => SELECT SQL_CALC_FOUND_ROWS dp.*, c.`name` as city, n.`name` as net #dc.`lp_id` FROM sp_delivery_points dp LEFT JOIN sp_cities c ON c.`id`=dp.`city_id` LEFT JOIN sp_nets n ON n.`id`=dp.`net_id` #LEFT JOIN sp_delivery_conditions dc on dc.dp_id=dp.id WHERE delivery_conditions.lp_id=27 AND dp.activity=1 ORDER BY city, net, dp.`name` LIMIT 0, 40 [context] => Y:\home\prosvet\www\_core\libs\ProSvet\dp.php line 94 ) Что это может быть? В таблице delivery_conditions есть колонка lp_id Заранее большое спасибо.
|
|
Back to top |
|
 |
|