0

我想知道是否有人可以帮助我。

首先我很抱歉。我本来想提供一个链接而不是打印下面的代码,但我需要它来运行我的实时服务器表。

我正在使用下面的代码生成与当前用户相关的所有位置记录的表。

<form name="locationsconsole" id="locationsconsole" method="post" action="locationsaction.php">
   <table width="864" cellpadding="0" cellspacing="0">
      <thead>
        <tr>
            <th width="17"></th>
            <th width="99"><div align="center">Location Name</div></th>
            <th width="287"><div align="left">Location Address</div></th>
            <th width="88"><div align="center">No. Of Finds Made </div></th>
            <th width="86"></th>
            <th width="72"></th>
            <th width="84"></th>
        </tr>
      </thead>
      <tbody>
 <?php

    $query = "SELECT l.locationid, f.locationid, l.locationname, l.userid, l.returnedaddress, count(f.locationid) as totalfinds FROM detectinglocations as l left join finds as f on l.locationid=f.locationid WHERE l.userid='$idnum' ORDER BY l.locationname";  
    $result = mysql_query($query) or die('error');

    if (mysql_num_rows($result) == 0)

    echo"<tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
         </tr>
         <tr>
            <td>&nbsp;</td>
            <td colspan='6'><div align='center'><strong>There are no records set up</strong></div></td>
            <td>&nbsp;</td>
         </tr>
         <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
         </tr>";

    else    

    {

    while($obj=mysql_fetch_object($result))
    {
            ?>

    <tr>
        <td><input type="hidden" name="lid" value="<?php echo $obj->locationid;?>"/></td>
        <td><div align="center"><?php echo $obj->locationname;?></div></td>
        <td><div align="left"><?php echo $obj->returnedaddress;?></div></td>
        <td><div align="center"><?php echo $obj->totalfinds;?></div></td>
        <td><div align="center"><input name="type" type="submit" value="View Details"/></div></td>
        <td><div align="center"><input name="type" type="submit" value="Add Finds"/></div></td>
        <td><div align="center"><input name="type" type="submit" value="Add Images"/></div></td>
      <td width="129"><div align="left"><input name="type" type="submit" value="View Location Finds"/></div></td>
    </tr>
<?php
    }   
    }           
?>
</tbody>
</table>
</form>

尽管查询正在检索正确的信息并且行上的按钮有效,但我遇到的问题是,虽然列表中应该显示 3 条记录,但只显示了第一条。

我是第一个承认在 PHP 方面我当然不是专家的人,但我已经为此工作了好几天,编写了很多次脚本,但我似乎找不到解决方案.

我只是想知道是否有人可以看看这个,让我知道我哪里出错了。

4

1 回答 1

0

正如@Bulk 和@ShawnVaser 所指出的,我的查询存在问题。这是解决方案:

询问

$query = "SELECT  l.*, COUNT(f.locationid) as totalfinds FROM detectinglocations l LEFT JOIN finds f ON f.locationid = l.locationid WHERE l.userid = '28' GROUP BY l.locationname"; 
$result = mysql_query($query);  
于 2012-07-03T14:27:52.500 回答