get_result () необходимо перенести в bind_result в php - PullRequest
0 голосов
/ 10 сентября 2018

Я создал функцию для получения запроса (receiveQuery) и его обработки.Он может получить INSERT, DELETE, SELECT или UPDATE.Также я вызываю эту функцию из другой функции (getParameter), которая отправит запрос в первый запрос.Я передаю arrayWithValues со всеми значениями, которые будут использоваться в SELECT, DELETE, UPDATE или INSERT.

У меня возникает следующая ошибка:

Fatal error: Call to undefined method mysqli_stmt::get_result

Я понимаю, что мне пришлось перейти на bind_result, но я не смог этого сделать.Не могли бы вы помочь мне решить эту проблему?

function receiveQuery($query, $mysqli1, $arrayWithValues)
{
    global $stmt;
    $stmt = $mysqli1->prepare($query);
    $arrayCount = count($arrayWithValues);

    if ($arrayCount >= 1)
    {
        $s = "";
        for ($x = 0; $x < $arrayCount; $x ++)
        {
            $s .= 's';
        }
        array_unshift($arrayWithValues,$s);
        $tmp = array();
        foreach($arrayWithValues as $key => $value) $tmp[$key] = &$arrayWithValues[$key];
        call_user_func_array(array($stmt, 'bind_param'), $tmp);
    }

    $stmt->execute();
    $result = $stmt->get_result();

    return $result;
}

function getParameter($modulo, $descripcion)
{
    $valor = NULL;
    $arrayWithValues = array($modulo, $descripcion);
    $mysqli1 = conectar2();
    $query = "SELECT  clmValor
                FROM  tblParametro
                WHERE clmModulo      = ?
                  AND clmDescripcion = ?";
    $result = receiveQuery($query, $mysqli1, $arrayWithValues);
    $foundRecords = $result->num_rows;
    cerrarCon($mysqli1);
    if ($foundRecords > 0)
        while ($rs = $result->fetch_assoc())
            $valor = $rs['clmValor'];
    return $valor;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...