Перед созданием новой темы, пожалуйста, ознакомьтесь с FAQ по LinkorCMS

Переход на mysqli

Супер пользователь
Сообщений: 125
Переписал класс на mysqli, все работает как и раньше только вот:

<?
// Возвращает количество затронутых записей в результате<b
r />
    public function NumRows(){<br />
        if(is_array($this->QueryResult)){<br />
            return mysqli_num_rows($this->MySQLQueryResult);<br />
        }else{<br />
            return mysqli_affected_rows($this->DbAccess);<br />
        }<br />
    }
?>

возвращает больше чем было выбрано... Хелп
Разработчик
Сообщений: 604
Во-первых, приведите полностью код переписанного класса.

Во-вторых, уже есть в репозитории переписанных на mysqli слой для работы с MySQL (посмотрите его).

В-третьих, приведите пример запроса, на котором возвращает больше, чем есть.

А по факту код странный. $this->QueryResult по идее является массивом (если нет ошибок при запросе), так что проверка в идеальном случае должна давать true. Так же запись в это свойство производится при запросах вроде выборки. В остальных случаях оно остается от предыдущих запросах, так как запись не производится. Так что много неопределенностей (тем более анализ идет по дефолтному классу).

-- Изменено "Мартин": 09.05.2016 18:54 --
Супер пользователь
Сообщений: 125
Вопрос решен. Долго мучаясь понял, что не в том месте вставил NumRows....
В репозиторий заходил, там увидел только старые реализации.
Разработчик
Сообщений: 604
Гости не могут отвечать на темы. Войдите или Зарегистрируйтесь.
Здесь присутствуют
(пользователей: 0, гостей: 1)
Быстрый переход: