繁体   English   中英

从另一页上的公共 function 获取价值时出现问题

[英]Problem getting value from a public function on another page

您好,请原谅我的问题,我对编程还很陌生,有些困惑。

我创建了一个公共 function 并试图在另一个页面上回显行数,该页面将用户名值传递给 function 我知道这是有效的,因为如果我在 ZC1C425268E68385D14ZA507 本身打印结果,我会得到所需的结果。

这是我页面中传递变量的代码,我试图在其中回显结果..这是帖子的数量,$xcount

<?php $rez=$crud->postcount($pc); ?>
                   
<div class="card mb-4">
<div class="card-header">Welcome <?php echo $_SESSION['user']?></div>
<div class="card-body">   
    <div>  
  
<form action="" method="post">
<input type="submit" name="submit" id="submit" class="button" value="log out"/>
</form>

<image src = "<?php echo $_SESSION['user_image']?>" style="max-width:100px; max-height:100px<br>">

<p><?php  echo 'Posts created: '.$xcount;?></p>
<p>Contenthere!</a></p>
</div>
</div>
</div>

$pc 已经定义并且在 function 中可用,如果我打印结果它可以工作。 但是,上面代码中 $xcount 的值没有打印出来,如果我在 vscode 中的 hover 上面它说未设置。 我知道我一定是在做一些完全愚蠢的事情,所以请提前原谅我。

这是我其他页面的代码。

public function postcount($pc){

    
   $sql=("SELECT count(*) from `posts` WHERE `created_by` =:pc ");
   $res=$this->db->prepare($sql);
   $res->bindParam(':pc',$pc);
   $res->execute();
   $xcount=0;
   $xcount= $res->fetchColumn();
 print ' number of posts:' .$xcount;

return $res;

}

当您只想使用 HTML 中的 $xcount 值时,您应该使用变量 $rez,其中函数返回值分配给:

<?php echo 'Posts created: '.$rez;?>

您应该删除“打印”行,否则数字将显示在页面顶部。

问题是,$xcount 是在 function 的 scope 中定义的。 所以它不能从外部访问,这不应该是这种情况,因为它是一种不干净的编程方式(在大多数情况下)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM