что заменить mysql_result ?
Im смотрел учебник сейчас, но он был сделан в 2011 году, так что он не работает сейчас. Вот ситуация, я буду очень признателен, если вы скажете мне, что заменить mysql_result здесь, и что положить в круглую скобку
function update_count() { global $link; $query = "SELECT `count`, FROM `hits_count`"; if($query_run = mysqli_query($link, $query)) { $count = mysql_result($query_run, 0, 'count'); $count_inc = $count + 1; echo $count; } } update_count();
mysqli_query возвращает объект mysqli_result . Оттуда вы можете получить нужное значение.
if($query_run = mysqli_query($link, $query)) { // This gets you one row at a time, use a while if there are multiple rows // while($row = mysqli_fetch_assoc($query_run)){} $row = mysqli_fetch_assoc($query_run); $count = $row['count']; // Do whatever with $count }
Чтобы поддержать краткий ответ тадмана с помощью кода-доказательства
В отличие от mysqli, PDO имеет давно искаженный эквивалент mysql_result:
function update_count() { global $link; $query = "SELECT `count` FROM `hits_count`"; $stmt = $link->prepare($query); $stmp->execute(); return $stmt->fetchColumn(); } echo update_count();
Любой, кто говорит, что mysqli не хуже PDO, должен попытаться связать массив с инструкцией IN() используя сначала подготовленные инструкции.
Согласно php.net mysql_result() устарел с PHP 5.5.0.
Итак, в этом случае вы должны использовать mysqli_fetch_all() или другой метод из mysqli_result::* .
function update_count() { global $link; $query = "SELECT `count` FROM `hits_count` ;"; if(($result = mysqli_query($link, $query)) && $result->num_rows >= 1) { $count = 0 ; while($row = $result->fetch_assoc()){ $count+= $row['count'] ; } echo $count; } }
Как правило, лучше передать эту ссылку в функцию:
function update_count($link) { $query = "SELECT `count` FROM `hits_count` ;"; if(($result = mysqli_query($link, $query)) && $result->num_rows >= 1) { $count = 0 ; while($row = $result->fetch_assoc()){ $count+= $row['count'] ; } echo $count; } }