Имя: Пароль:
IT
Веб-мастеринг
PHP+MySQL. Не работает get_result() в mysqli.
,
0 batmansoft
 
24.01.16
18:28
Добрый день. Использую mysqli вот таким вот образом:
        //вывести содержимое статьи
        function view_article($mysqli, $id) {
            echo "<br>show_article $id";
            $mysqli->query('SET NAMES "'.$this->encoding.'"'); //задать кодировку
            $query = "select content ";
            $query = $query."from ".$this->db->getTableName($this->tableName); //подключили таблицу
            $query = $query." where catid=?";
            echo "<br>rrrrrrrrrrrrrrr";
            $stmt = $mysqli->prepare($query);
            echo "<br>---------------";
            try
            {
                $stmt->bind_param('s',$id);
            } catch (Exception $exc) {
                echo "ERROR BIND";
                echo $query."\n".$stmt->errorInfo();
            }
            echo "<br>aaaaaa";
            if(!$stmt->execute()) {
                echo "<h1>ERROR</h1>";
            }            
            echo "<br>ффффффффффффффффффффффф";
            $result = $stmt->get_result();
            echo "<br>яяяяяяяяяяяяяяяя";
            $row = $result->fetch_row();
            echo "<br>qqqqqqqq";
            echo $row[0];
            $stmt->close();
        }
И почему то просто валиться на строке $result = $stmt->get_result(); - то есть, доходит до этой строки и тупо перестаёт дальше выполнять. подскажите пожалуйста, как лечить?
1 drcrasher
 
24.01.16
19:06
/var/log/apache2/error.log в помощь
2 Asmody
 
24.01.16
19:31
что за get_result?
вообще-то bind_result и fetch
http://php.net/manual/ru/mysqli-stmt.fetch.php
3 D_Pavel
 
24.01.16
19:54
(0) У тебя наверное Native Driver не установлен. Либо поставь, либо не используй get_result.

http://php.net/manual/ru/book.mysqlnd.php
4 batmansoft
 
24.01.16
19:56
(2) Спасибо, теперь заработало
5 D_Pavel
 
24.01.16
20:03
(4) Смотри осторожнее. При использовании клиентской библиотеки MySQL расход памяти больше до двух раз, производительность меньше. И вообще это старье.
6 Asmody
 
24.01.16
20:05
(5) Миста до сих пор на deprecated mysql крутится, вполне шустро.
7 D_Pavel
 
24.01.16
20:09
(6) Потому что у мисты сервер с достаточным количеством ресурсов, и миллионы строк за один запрос не выкачиваются.
8 Asmody
 
24.01.16
20:13
(7) Мисту вылизывали несколько лет разные люди, было время попробовать разные варианты. Да и 15 гигов - это не сильно большая база по нынешним временам.
9 D_Pavel
 
24.01.16
20:16
(8) От размера базы не зависит скорость обработки полученной информации клиентом.
10 Asmody
 
24.01.16
20:17
(9) Скорость выборки данных зависит.
11 D_Pavel
 
24.01.16
20:19
(10) Скорость выборки никак не связана с PHP