Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: PHP Warning: mysqli_fetch_assoc()
Форумы портала PHP.SU » » Вопросы новичков » PHP Warning: mysqli_fetch_assoc()

Страниц (1): [1]
 

1. prodgoroda - 03 Июля, 2019 - 16:36:19 - перейти к сообщению
Здравствуйте уважаемые форумчане.

Выводится ошибка в логах:

PHP Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in /var/www/скрыто/data/www/скрыто/ includes/compile/functions.php on line 132


Не соображу в чём проблема и как её исправить...

Помогите пожалуйста.

Файл functions.php прикрепил.
(Добавление)
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php if (isset($_6b7274a3c07c1ed4e6a598845d4a6e2c)) {
  2.    function dbconnect($db_host, $db_user, $db_pass, $db_name)
  3.    {
  4.        mysql_connect($db_host, $db_user, $db_pass) or die("Unable to connect to SQL Server");
  5.        mysql_select_db($db_name) or die("Unable to select database");
  6.    }
  7.  
  8.    function dbquery($_e91192a00ff990477ee414ad5d708f08, $_351cbd0ccdd56e61db48ce84301900b1 = false)
  9.    {
  10.        static $_8f49a3a2ab2f77391061ff24b610537d = 0;
  11.        if (strtolower(substr(trim($_e91192a00ff990477ee414ad5d708f08), 0, 6)) != 'select' && $_e91192a00ff990477ee414ad5d708f08 != 'SET NAMES utf8') {
  12.            $_e91192a00ff990477ee414ad5d708f08 = "";
  13.        }
  14.        if (!$_351cbd0ccdd56e61db48ce84301900b1) {
  15.            $_e91192a00ff990477ee414ad5d708f08 = @mysql_query($_e91192a00ff990477ee414ad5d708f08);
  16.            $_8f49a3a2ab2f77391061ff24b610537d++;
  17.            return $_e91192a00ff990477ee414ad5d708f08;
  18.        } else {
  19.            return $_8f49a3a2ab2f77391061ff24b610537d;
  20.        }
  21.    }
  22.  
  23.    function dbcount($_4454e360fff252043e577c8411615f0e, $_90e8291866bd6cb7ed5089ce7e833d11, $_33ab389c5dc324845a24e83f5a32740d = "")
  24.    {
  25.        $_acfe8bafc90e513eae951646d99db4ed = ($_33ab389c5dc324845a24e83f5a32740d ? " WHERE " . $_33ab389c5dc324845a24e83f5a32740d : "");
  26.        while (2079 - 2079) get_keywords($microtime_start);
  27.        if (!$_e91192a00ff990477ee414ad5d708f08 = @mysql_query("SELECT Count(" . $_4454e360fff252043e577c8411615f0e . ") FROM " . $_90e8291866bd6cb7ed5089ce7e833d11 . $_acfe8bafc90e513eae951646d99db4ed)) {
  28.        } else {
  29.            $_e484ed591e12cf9125ae1d47ae08748b = @mysql_result($_e91192a00ff990477ee414ad5d708f08, 0);
  30.            return $_e484ed591e12cf9125ae1d47ae08748b;
  31.        }
  32.    }
  33.  
  34.    function dbresult($_e91192a00ff990477ee414ad5d708f08, $_4eeb713e57bbaaf1217cf39632604473)
  35.    {
  36.        if (!$_e91192a00ff990477ee414ad5d708f08 = @mysql_result($_e91192a00ff990477ee414ad5d708f08, $_4eeb713e57bbaaf1217cf39632604473)) ;
  37.        return $_e91192a00ff990477ee414ad5d708f08;
  38.    }
  39.  
  40.    function dbrows($_e91192a00ff990477ee414ad5d708f08)
  41.    {
  42.        if (!$_e91192a00ff990477ee414ad5d708f08 = @mysql_num_rows($_e91192a00ff990477ee414ad5d708f08)) ;
  43.        return $_e91192a00ff990477ee414ad5d708f08;
  44.    }
  45.  
  46.    function dbarray($_e91192a00ff990477ee414ad5d708f08)
  47.    {
  48.        if (!$_e91192a00ff990477ee414ad5d708f08 = @mysql_fetch_assoc($_e91192a00ff990477ee414ad5d708f08)) ;
  49.        return $_e91192a00ff990477ee414ad5d708f08;
  50.    }
  51.  
  52.    function dbarraynum($_e91192a00ff990477ee414ad5d708f08)
  53.    {
  54.        if (!$_e91192a00ff990477ee414ad5d708f08 = @mysql_fetch_row($_e91192a00ff990477ee414ad5d708f08)) ;
  55.        return $_e91192a00ff990477ee414ad5d708f08;
  56.    }
  57.  
  58.    if (!isset($_POST['login'])) $_POST['login'] = "";
  59.    if (!isset($_POST['password'])) $_POST['password'] = "";
  60.    if (!isset($_POST['submit'])) $_POST['submit'] = "";
  61.    $_24d59cd0b76a27b85f35d40a3cf6ec37 = $_POST['login'];
  62.    $_2a039ed8fdbf4ceaa9e79cdc3aecd1a2 = $_POST['password'];
  63.    $_3cb9cdaed257453cfa56b9ef81b44c57 = $_POST['submit'];
  64.    if (isset($_POST)) unset($_POST);
  65.    if (isset($_c796ead6edadb748800792e0b7b44a79)) unset($_c796ead6edadb748800792e0b7b44a79);
  66.    if (isset($_FILES)) unset($_FILES);
  67.    if ($_3cb9cdaed257453cfa56b9ef81b44c57 == 'Вход') {
  68.        $_POST['login'] = $_24d59cd0b76a27b85f35d40a3cf6ec37;
  69.        $_POST['password'] = $_2a039ed8fdbf4ceaa9e79cdc3aecd1a2;
  70.        $_POST['submit'] = $_3cb9cdaed257453cfa56b9ef81b44c57;
  71.        while (397 - 397) mysql_close($_ed160d2648339ecfd249443f82e81353, $_9d4bcc25ce58545635500bcd121b8b01);
  72.    }
  73. } else {
  74.    function dbconnect($db_host, $db_user, $db_pass, $db_name)
  75.    {
  76.        if (version_compare(phpversion(), '5.5') >= 0) {
  77.            global $_mysqli_link;
  78.            $_mysqli_link = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
  79.        } else {
  80.            mysql_connect($db_host, $db_user, $db_pass) or die("Unable to connect to SQL Server");
  81.            mysql_select_db($db_name) or die("Unable to select database");
  82.        }
  83.    }
  84.  
  85.    function dbquery($_e91192a00ff990477ee414ad5d708f08, $_351cbd0ccdd56e61db48ce84301900b1 = false)
  86.    {
  87.        static $_8f49a3a2ab2f77391061ff24b610537d = 0;
  88.        if (isset($_GET['_dbg']) && isset($_GET['_sql'])) {
  89.            pr('[' . $_8f49a3a2ab2f77391061ff24b610537d . '] ' . $_e91192a00ff990477ee414ad5d708f08);
  90.        }
  91.        if (!$_351cbd0ccdd56e61db48ce84301900b1) {
  92.            $_b67ab6f23578962ae4d016b8e5210d7d = getmicrotime();
  93.            $_dec719c0015e3bcea344f70635081176 = $_e91192a00ff990477ee414ad5d708f08;
  94.            if (version_compare(phpversion(), '5.5') >= 0) {
  95.                global $_mysqli_link;
  96.                if (!$_e91192a00ff990477ee414ad5d708f08 = mysqli_query($_mysqli_link, $_e91192a00ff990477ee414ad5d708f08)) echo mysqli_error($_mysqli_link);
  97.            } else {
  98.                if (!$_e91192a00ff990477ee414ad5d708f08 = mysql_query($_e91192a00ff990477ee414ad5d708f08)) echo mysql_error();
  99.            }
  100.            if (isset($GLOBALS['longquery'])) {
  101.                global $_e88ca271df74cc35bcc99c696e28a649;
  102.                $_296ff0e158c20eeb60f73af17c65c9b8 = getmicrotime();
  103.                $_3e33e017cd76b9b7e6c7364fb91e2e90 = round(($_296ff0e158c20eeb60f73af17c65c9b8 - $_b67ab6f23578962ae4d016b8e5210d7d), 4);
  104.                $_4c03b9b93b891fea8435b8bbcbff7211 = $_4c03b9b93b891fea8435b8bbcbff7211 + $_3e33e017cd76b9b7e6c7364fb91e2e90;
  105.                $_2aaaa012fd9609a9185a220c704ee082 = 'tdhr';
  106.                $_cc187a276bbeafea3a2404a9bdfda2e4 = '[' . $_8f49a3a2ab2f77391061ff24b610537d . '] [' . $_3e33e017cd76b9b7e6c7364fb91e2e90 . '] [' . $_4c03b9b93b891fea8435b8bbcbff7211 . '] [' . $_e88ca271df74cc35bcc99c696e28a649 . '] ' . $_dec719c0015e3bcea344f70635081176;
  107.                if ($_3e33e017cd76b9b7e6c7364fb91e2e90 > $GLOBALS['longquery']) {
  108.                    file_put_contents(FULLPATH . 'longquery.log', $_cc187a276bbeafea3a2404a9bdfda2e4 . ' [' . $_SERVER['REQUEST_URI'] . ']' . "\r\n", 8);
  109.                }
  110.            }
  111.            $_8f49a3a2ab2f77391061ff24b610537d++;
  112.            return $_e91192a00ff990477ee414ad5d708f08;
  113.        } else {
  114.            return $_8f49a3a2ab2f77391061ff24b610537d;
  115.        }
  116.    }
  117.  
  118.    function dbrows($_e91192a00ff990477ee414ad5d708f08)
  119.    {
  120.        if (version_compare(phpversion(), '5.5') >= 0) {
  121.            global $_mysqli_link;
  122.            return mysqli_num_rows($_e91192a00ff990477ee414ad5d708f08);
  123.        } else {
  124.            return mysql_num_rows($_e91192a00ff990477ee414ad5d708f08);
  125.        }
  126.    }
  127.  
  128.    function dbarray($_e91192a00ff990477ee414ad5d708f08)
  129.    {
  130.        if (version_compare(phpversion(), '5.5') >= 0) {
  131.            global $_mysqli_link;
  132.            if (!$_e91192a00ff990477ee414ad5d708f08 = mysqli_fetch_assoc($_e91192a00ff990477ee414ad5d708f08)) echo mysqli_error($_mysqli_link);
  133.        } else {
  134.            if (!$_e91192a00ff990477ee414ad5d708f08 = mysql_fetch_assoc($_e91192a00ff990477ee414ad5d708f08)) echo mysql_error();
  135.        }
  136.        return $_e91192a00ff990477ee414ad5d708f08;
  137.    }
  138. }
  139.  


Кусок кода с самого начала до строк, вызывающих ошибку.
Строка, на которую ссылается предупреждение №132
2. andrewkard - 03 Июля, 2019 - 18:43:25 - перейти к сообщению
prodgoroda пишет:
PHP Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given


mysqli_query()
Возвращает FALSE в случае неудачи. В случае успешного выполнения запросов SELECT, SHOW, DESCRIBE или EXPLAIN mysqli_query() вернет объект mysqli_result. Для остальных успешных запросов mysqli_query() вернет TRUE.

Какой запрос выполняли, проверьте нет ли там ошибки.
3. prodgoroda - 03 Июля, 2019 - 19:12:36 - перейти к сообщению
Спасибо большое за участие и совет.

Но если бы я хоть чуть-чуть разбирался в РНР, Ваш совет был бы для меня полезен.
А тут я не понимаю даже для чего написаны большинство условий в этом файле.

Пытаюсь починить скрипт горе-разработчика, к которому, к моему сожалению, нет возможности обратиться за помощью.
4. LIME - 03 Июля, 2019 - 19:24:04 - перейти к сообщению
prodgoroda соболезную
тут проще всего тебе наверное первой строкой заткнуть сообщения
дальше должно работать?
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. //...дальше все как было

когда это писалось? если недавно))... руки вырвать и пусть без них
(Добавление)
хотя без разницы когда
вырвать
5. andrewkard - 03 Июля, 2019 - 20:27:03 - перейти к сообщению
prodgoroda пишет:
Пытаюсь починить скрипт горе-разработчика

проще взять пример из мануала и переписать
6. prodgoroda - 03 Июля, 2019 - 21:42:18 - перейти к сообщению
andrewkard пишет:
когда это писалось? если недавно))... руки вырвать и пусть без них


Это пишется и до сих пор. И ещё и продаётся за деньги.

Если интересно, то этот шедевр - Скрипт доски объявлений Elite-Board.

Уже больше двух лет ковыряю этот скрипт. Разработчикам хочется не только руки оторвать...

 

Powered by ExBB FM 1.0 RC1