我只想在我的数据库中向总用户显示20%的用户。这是我在PHP中的代码,但我使用限制3来显示用户。但是,如果我想从总用户中显示20%呢?这意味着我必须计算我的字段中的所有行并将其乘以0.2。但它不起作用。所以这是我的开头代码,我还没改变它。
<table class="table table-striped table-hover ">
<thead>
<tr>
</tr>
</thead>
<tbody>
<?php
function getName($id){
$d=mysql_fetch_array(mysql_query("SELECT * FROM infouser WHERE ID_User='$id' "));
return $d['fullname'];
}
$sqlx= mysql_query("SELECT * FROM correlation WHERE ID_User = '".$_SESSION['iduser']."' ORDER BY result DESC limit 3");
$i=0;
while(
$datax=mysql_fetch_array($sqlx))
{
$i++;
$ID_User=$data['ID_User'];
$u[$i]=$ID_User;
?>
<tr>
<td><?php echo $i?></td>
<td><?php echo getName($datax['ID_User_Recommendation'])?></td>
<td><a href= "test.php?page_owner=<?PHP echo base64_encode(strip_tags($datax['ID_User_Recommendation']));?>" >View Profile</a></td>
</tr>
<?php }
?>
</tbody>
</table>
我编辑了我的上一篇文章,清楚地说明了这一点。因为我尝试了答案,但仍然卡住而且不起作用。所以在这里,我给出了我不会改变的代码。请帮忙,因为我觉得这并不简单。无论如何,提前谢谢你。 顺便说一下,我把这个文件包含在另一个文件中,另一个文件已经包含在文件中,用于连接数据库。
答案 0 :(得分:0)
$sql = new mysqli ('HOST','DB_USER','DB_PASS','DB'); //change to your values
$rec_user =("SELECT ID_User_Recommend FROM correlation");
if ($result = $sql->query($rec_user)){
$limiter = $result->num_rows;
$result->free();
}
$limit = round($limiter * 0.2,0,PHP_ROUND_HALF_EVEN);
$iduser = $_SESSION['iduser'];
$sqlx= "SELECT * FROM correlation ORDER BY result DESC limit $limit";
if ($result=$sql->query($sqlx)) {
while($datax=$result->fetch_assoc())
{
echo $datax['ID_User'];
}
}
?>
这将为您提供mysql可以处理的第一个查询的编号,并将运行查询。
答案 1 :(得分:0)
首先,由于语法不正确,页面将为空。 您应该更改php.ini文件(https://stackoverflow.com/a/10667432/977026)中的display_errors设置,以便显示错误,并且您可以知道要修复的内容。
有很多错误:
尝试这样的事情:
<?php
$id = (int)$_SESSION['iduser'];
$user_query = mysqli_query("SELECT COUNT(ID_User_Recommend) FROM correlation WHERE ID_User = $id");
if ($user_count = mysqli_fetch_array($user_query)) {
$limit = (int)$user_count[0]/5;
$list_query = mysql_query("SELECT * FROM correlation WHERE ID_User = $id ORDER BY result DESC limit $limit");
$users = array();
while($user = mysqli_fetch_assoc($list_query)) {
$users[] = $user['ID_User'];
}
print_r($users);
mysqli_free_result($list_query);
}
mysqli_free_result($user_query);
?>