Php 在一个数组中设置两个select查询的值

Php 在一个数组中设置两个select查询的值,php,mysql,arrays,Php,Mysql,Arrays,我的two-select查询是这样的,但我想获取单个数组中的所有记录,如何从不同的select查询中设置一个数组中的所有值 $partyId = isset($_REQUEST['partyId']) ? $_REQUEST['partyId'] : 0; $k = 0; $clientDetail = array(); $selectClient = "SELECT * FROM client WHERE partyI

我的two-select查询是这样的,但我想获取单个数组中的所有记录,如何从不同的select查询中设置一个数组中的所有值

    $partyId = isset($_REQUEST['partyId']) ? $_REQUEST['partyId'] : 0;

    $k = 0;
    $clientDetail = array();
    $selectClient = "SELECT * FROM client
                     WHERE partyId = ".$partyId;
    $selectClientRes = mysql_query($selectClient);
    while($clientRow = mysql_fetch_array($selectClientRes))
    { 
      $clientDetail[$k]['clientId']     = $clientRow['clientId'];
      $clientDetail[$k]['particular']   = $clientRow['particular'];
      $clientDetail[$k]['cliTransType'] = $clientRow['cliTransType'];
      $clientDetail[$k]['cDate']        = date('d-m-Y',strtotime($clientRow['cDate']));
      $clientDetail[$k]['rate']         = $clientRow['rate'];
      $clientDetail[$k]['diff']         = $clientRow['diff'];
      $clientDetail[$k]['diffAmt']      = $clientRow['diffAmt'];
      $clientDetail[$k]['total']        = $clientRow['total'];
      $clientDetail[$k]['kg']           = $clientRow['kg'];
      $clientDetail[$k]['totalAmt']     = $clientRow['totalAmt'];
    }

    $rojmelArray = array();
    $l = 0;
    $selectRojmel = "SELECT DATE_FORMAT(rojmelDate,'%d-%m-%Y') AS rojmelDate,fine AS rojmelFine,amount AS rojmelAmt,rojTransType 
                        FROM rojmel
                    WHERE partyId = ".$partyId;
    $selectRojmelRes = mysql_query($selectRojmel);
    while($rojmelRow = mysql_fetch_array($selectRojmelRes))
    {
      $rojmelArray[$l]['rojmelDate']   = $rojmelRow['rojmelDate'];                 
      $rojmelArray[$l]['rojmelFine']   = $rojmelRow['rojmelFine'];                 
      $rojmelArray[$l]['rojmelAmt']    = $rojmelRow['rojmelAmt'];                 
      $rojmelArray[$l]['rojTransType'] = $rojmelRow['rojTransType'];                 
      $l++;
    } 
对于第一个查询部分

 {section name="sec" loop=$clientDetail}
     <td><a href="client.php?clientId={$clientDetail[sec].clientId}"><img src="img/edit.png"></a></td>
     <td>{$clientDetail[sec].particular}</td>
     <td>{$clientDetail[sec].cDate}</td>
     <td>{$clientDetail[sec].rate}</td>
     <td>{$clientDetail[sec].total}</td>
     <td>{$clientDetail[sec].kg}</td>
     <td>{$clientDetail[sec].totalAmt}</td>
  </tr>
  {/section}
第二查询部分

{section name="sec1" loop=$rojmelArray}
    {if $rojmelArray[sec1].rojTransType == 'J' }
      <td>Javak</td>
    {else}
      <td>Aavak</td>
    {/if}
     <td>{$rojmelArray[sec1].rojmelDate}</td>
     <td>{$rojmelArray[sec1].rojmelFine}</td>
     <td>{$rojmelArray[sec1].rojmelAmt}</td>

尝试左外部联接,该联接将结合来自两个表的结果,其中客户端表中的clientId等于rojmel表中的partyId

$sql = "SELECT client.*, DATE_FORMAT(rojmelDate,'%d-%m-%Y') AS rojmelDate, fine AS rojmelFine, amount AS rojmelAmt, rojTransType FROM client LEFT OUTER JOIN rojmel on rojmel.partyId = clientId WHERE clientId = ".$clientId;

我通过这个查询得到结果

SELECT client.*, DATE_FORMAT(rojmelDate,'%d-%m-%Y') AS rojmelDate, fine AS rojmelFine, amount AS rojmelAmt, rojTransType FROM client 
LEFT OUTER JOIN rojmel on rojmel.partyId = clientId WHERE client.`partyId`= ".$partyId;

请停止使用不推荐的mysql扩展,阅读每个文档页面。该扩展已弃用,在当前PHP版本上发布通知,并将在将来删除。学习使用PDO或mysqli,i代表改进,了解使用PDO的注入和准备语句。我不知道如何使用PDO@jayblanchard有一个指向那里的教程@Prashant1064的链接-您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以获得正确的语法,将第3Try行中“$partyId”附近的一行作为一行使用,并将最后一个partyId更改为clientIdi have partyId字段。OP为什么要尝试此操作?请添加对您所做的以及您为什么这样做的解释,不仅针对OP,而且针对SO的未来访客。选择客户。*,日期_FORMATrojmelDate,“%d-%m-%Y”为rojmelDate,罚款为rojmelFine,金额为rojmelAmt,rojTransType来自客户端左外部连接rojmel上的rojmel.partyId=clientId,其中clientId=2@JustAspMe我得到了这个结果