возник вопрос с mysqli->prepare, при использовании запроса типа:
SELECT id FROM DR_CMS_Pages WHERE url = ?
все работает отлично. То есть указан один столбец БД, при указании "*" или более одного столбцов - выводится ошибка:
Warning: mysqli_stmt::bind_result() [mysqli-stmt.bind-result]: Number of bind variables doesn't match number of fields in prepared statement in ...
Использую denwer:
Apache/2.2.4 (Win32) mod_ssl/2.2.4 OpenSSL/0.9.8k PHP/5.3.13
MySQL:
Server version: 5.1.40-community
Вот сам сниппет
public function getPage($pageName) {
/* создаем подготавливаемый запрос */
if ($stmt = $this->mysqli->prepare("SELECT id, title FROM DR_CMS_Pages WHERE url = ?")) {
/* связываем параметры с метками */
$stmt->bind_param("s", $pageName);
/* запускаем запрос */
$stmt->execute();
/* связываем переменные с результатами запроса */
$stmt->bind_result($result);
/* получаем значения */
$stmt->fetch();
/* закрываем запрос */
$stmt->close();
/* возвращаем результат */
return $result;
}
}
Где то нашел инфу что это баг, но все таки лучше в этом самому убедиться.
Всех с наступающим Новым годом и заранее благодарен!