我正在整理一个小脚本,该脚本将查询我们的结算数据库,并报告任何有免费服务的客户帐户(免费提供),但不再在其帐户上提供付费服务。
这个想法基本上是他们有产品ID a,产品ID b,或者他们两个都是活跃的(我们会说那些是免费的),但没有别的,我想找到那些帐户。我应该保持bProductA = false和bProductB = false这样的bool并将其设置为true,如果找到的话,或者我是否可以更清洁地执行此操作?
<?php
// Establish the MySQL Database Connections
include_once("db.php");
$clients = mysql_query('SELECT id FROM tblclients WHERE status = "Active"');
while ($client = mysql_fetch_array($clients))
{
$client_id = $client["id"];
$products = mysql_query('SELECT packageid FROM tblhosting WHERE userid = "' . $client_id . '" AND domainstatus = "Active" OR domainstatus = "Suspended"');
while ($product = mysql_fetch_array($products))
{
// Check for MYSQL/DNS Products
$product_id = $product["id"];
$package_id = $product["packageid"];
// MySQL Database
if ($package_id == "999")
{
}
// DNS Record
if ($package_id == "999")
{
}
}
}
?>
答案 0 :(得分:0)
如果您打算在数据库方面做很多工作,那么学习思考数据集会更好。 SQL数据库基于集合。任何时候你都想要
你几乎肯定是在错误的轨道上。
应该想要考虑的是
(我不敢打赌每个非活动客户都没有免费或付费服务。)
您是感兴趣的在第一组成员的客户中,但不是第二组的成员。你可以用一个查询来获得它。
编辑您的问题,如果您需要更多帮助来编写该查询,请粘贴CREATE TABLE语句。