我设计了一个循环,但是我不喜欢它,我假设有更好的方法来做到这一点,但我很困惑。
基本上,有两个表。 BlogSubscribers和用户
BlogSubscribers只为订阅者(与用户相关)表保存用户ID,我正在尝试获取"性别"作为订阅者的每个用户的值,但该信息存储在Users表中。
循环只经过一次(这就是为什么我试图用整数循环它) - 我怎样才能使这项工作更有效率?
如果您能解释您发布的任何答案,那就太棒了,所以我知道代码将来如何运作。
$ ID只是通过网址的GET参数,即?Blog = $ ID
$GetSubInfo = mysqli_query($db, "SELECT * FROM BlogSubscribers WHERE BlogID = '$ID'");
$GetSubInfoCount = mysqli_num_rows($GetSubInfo);
$LoopCount = 0;
while($LoopCount < $GetSubInfoCount){
$GetSubs = mysqli_fetch_object($GetSubInfo);
$GetFemaleSubs = mysqli_num_rows(mysqli_query($db, "SELECT * FROM Users WHERE ID = '$GetSubs->UserID' AND Gender = 'Female'"));
$GetMaleSubs = mysqli_num_rows(mysqli_query($db, "SELECT * FROM Users WHERE ID = '$GetSubs->UserID' AND Gender = 'Male'"));
$GetOtherSubs = mysqli_num_rows(mysqli_query($db, "SELECT * FROM Users WHERE ID = '$GetSubs->UserID' AND Gender = 'Other'"));
$GetUnknownSubs = mysqli_num_rows(mysqli_query($db, "SELECT * FROM Users WHERE ID = '$GetSubs->UserID' AND Gender = 'Unknown'"));
$LoopCount = $LoopCount + 1;
}