Php 在一个数组中设置两个select查询的值
我的two-select查询是这样的,但我想获取单个数组中的所有记录,如何从不同的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
$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我得到了这个结果