用{?
替换mysql_result
的内容
我现在正在观看教程,但它是在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();
答案 0 :(得分:7)
mysqli_query
会向您返回mysqli_result
object。从那里,你可以得到你想要的价值。
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
}
答案 1 :(得分:3)
用证明代码
支持tadman的简明答案与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()
语句中。
答案 2 :(得分:1)
根据php.net mysql_result()
,自PHP 5.5.0起不推荐使用。
因此,在这种情况下,您应该使用mysqli_fetch_all()
或mysqli_result::*
class中的其他方法。
答案 3 :(得分:0)
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;
}
}