Здравствуйте. Работаю со стандартным классом mysqli. После выполнения подготовительного выражения есть метод bind_result, который принимает неограниченное количество ссылок на переменные в которые будут записаны результаты, дело в том, что мне нужно получить массив, в котором ключем будет название поля, а значением значение поля. Если использовать этот bind_result то не удобно, так как я не знаю сколько в таблице полей, следовательно не знаю скоко нада туда передавать переменных. Если не использовать подготовительне выражения, а тупо сразу метод query, то там есть метод fetch_assoc, который возвращает такой массив, очень удобно, но почему же его нет в подготовительных выражениях? Как можно выполнить мою задачу? Заранее спасибо за ответы...
Ответ на данный вопрос кроется в глубине человеческой души... Код (Text): function Search( $RequestID ) { global $mysqli; $sql = "SELECT * FROM `ex_requests` WHERE `ID` = ?"; $stmt = $mysqli->stmt_init(); if( $result = $stmt->prepare( $sql ) ) { $stmt->bind_param( "d",$RequestID ); $stmt->execute(); $result = $stmt->result_metadata(); $fields = $result->fetch_fields(); $res_arr = array(); $list = array(); foreach($fields as $f) $list[] = &$res_arr[$f->name]; if(!call_user_func_array(array($stmt, 'bind_result'), $list)) return "bind result error: ".$stmt->error; $f = $stmt->fetch(); if($f === false) return "fetch error: ".$stmt->error; if($f === null) return null; return $res_arr; } return mysqli_error($mysqli); } var_dump( Search( 1 ) ); Код (Text): array(13) { ["ID"]=> int(1) ["CreateDate"]=> string(19) "2010-07-11 09:38:38" ["UpdateDate"]=> string(19) "2010-07-11 09:38:40" ["FromCurrency"]=> string(3) "WMZ" ["ToCurrency"]=> string(3) "WMR" ["FromAmount"]=> float(10) ["ToAmount"]=> float(500) ["CustomerWMID"]=> string(12) "000000000000" ["CustomerEmail"]=> string(12) "444@gmail.ru" ["FromPurse"]=> string(13) "Z000000000000" ["ToPurse"]=> string(13) "R000000000000" ["X2Retval"]=> int(0) ["Status"]=>