1

我正在创建一个页面,我可以在其中列出我现在和过去的所有工作,以及每个工作的各种加薪/晋升。我希望列出基本的工作信息,然后在单独的 DIV 中列出所有促销活动。当我循环它们时,我的问题就出现了。对于每项工作,我都希望有多个工资列表,但发生的情况是,如果我有不止一次加薪,它将列出每次加薪的工作信息。我如何让它按照我想要的方式工作?

以下是每个数据库的列:

职位信息 ID | 地点名称 | 地址 | 电话

职位促销 ID | 职位ID | 日期 | 工资 | 位置

我的代码:

<div id="CurrentJobs">
    <?php

    $CurrentJobsResults = mysql_query("
        SELECT JobInfo.*, JobPromotions.*
        FROM JobInfo
        LEFT JOIN JobPromotions
        ON JobInfo.ID=JobPromotions.JobID
        WHERE JobInfo.DateEnd = '0000-00-00'
        ");

    while ($row = mysql_fetch_array($CurrentJobsResults)) {
        echo "
            <div class='JobItem'>
                <div class='JobItem_Gen'>
                    <b>{$row['LocName']}</b>
                    <p>{$row['Street']}</p>
                    <p>{$row['City']}</p>
                    <p>{$row['State']}</p>
                    <p>{$row['Zip']}</p>
                    <p>{$row['Phone']}</p>
                </div>
                <div class='JobItem_Prom'>
                    <p>{$row['Date']}</p>
                    <p>{$row['Position']}</p>
                    <p>{$row['Wage']}</p>
                </div>
            </div>
        ";
    }

    ?>
</div>

任何帮助将不胜感激,因为这越来越烦人了!

谢谢!

4

1 回答 1

1

我能想到的最简单的方法是对数据库进行两次调用,以便您可以在两个单独的数组中获得工作信息和促销信息。

while($job_rows = mysql_fetch_array($CurrentJobsResults_select))
{ $jobs[] = $job_rows; }

while($promotion_rows = mysql_fetch_array($CurrentPropmotionResults_select))
{ $promotions[] = $promotion; } 


foreach($jobs as $job_info)
{
    echo "<div class='JobItem'>
            <div class='JobItem_Gen'>
                <b>{$job_info['LocName']}</b>
                <p>{$job_info['Street']}</p>
                <p>{$job_info['City']}</p>
                <p>{$job_info['State']}</p>
                <p>{$job_info['Zip']}</p>
                <p>{$job_info['Phone']}</p>
            </div>";

    foreach($promotions as $promotion_info)
    {
        if($promotion_info['JobID'] == $job_info['ID'])
        {
           echo  "<div class='JobItem_Prom'>
                     <p>{$row['Date']}</p>
                     <p>{$row['Position']}</p>
                     <p>{$row['Wage']}</p>
                  </div>";
          }//if
     }//for each promotions
}//for each jobs

类似的东西。

编辑:
我假设promotions 表通过JobID 字段链接到jobs 表。另外,我省略了查询每个数据库以获取单独结果字符串的代码

于 2012-05-03T02:43:46.157 回答