2011-11-14 97 views
0
$sql=Select A.a,B.b,b,C.c 

from A,B,C 
group by 
A.a, B.b,C.c 
order by A.oder_nr,A.a 

$row_Sql= mysql_query($sql,$db) or die (mysql_error()); 
$record_set= mysql_fetch_assoc($row_Sql); 
$totalRows_$row_sql=mysql_num_rows($row_Sql); 
$A='' 
$B='' 
while ($record_set = mysql_fetch_assoc($row_Sql)) 
{ 
    if ($A != $record_set[ 'A' ]) 
    { 

     $A = $record_set[ 'A' ]; 

     echo "<h2>$A</h2>"; 

    } 
    if ($B!= $record_set[ 'b' ]) 
    { 

     $B = $record_set[ 'b' ]; 

     echo "<h3>$B</h3>"; 


    } 
    echo "<li><a href=\"Detail.php?A_id=".$record_set['A_id']. "\">"; 
    echo $record_set['c']; 
    echo $record_set['d']; ?></br></a></li> 

    <?php } ?> 

單獨使用Sql查詢返回完整的結果,但使用它與PHP代碼總是刪除第一個結果。查詢返回例如1,2,3,4但PHP啓動從2,3,4。任何想法?使用MySql查詢和PHP的不同結果

回答

8

您在迴路上方呼叫$record_set= mysql_fetch_assoc($row_Sql);。這將有效地修剪結果集的第一行。

也似乎使用可變變量,不知道是不是故意的或一個錯字:

while ($record_set = mysql_fetch_assoc($$row_Sql)) 
//          ^---------- variable variables! 
+0

這是錯字,但你正確調用它兩次的problem.Thanx! – user1045813