<?php
$dbname = 'pdartist2';
$table = 'artwork';
$result = mysql_query("select AID, ThumbFilePath, Title, DisplayOrder from artwork where SCID = $SCID order by DisplayOrder") or die(mysql_error());
while($row = mysql_fetch_array($result)){
$AID = $row['AID'];
$ThumbFilePath = $row['ThumbFilePath'];
$Title = $row['Title'];
$DisplayOrder = $row['DisplayOrder'];
$RecordCount = $row['Count']; {
$ColCount = $ColCount+1;
if ($ColCount ==5) {
echo "<div id='clear'></div>";
$ColCount = 1;
}
echo "<div id='thumb' onClick='window.location='gallery_detail.php?AID=AID';' title='Enlarge'>";
echo "<div id='thumb_container'>";
echo "<a href='gallery_detail.php?AID=$AID'><img src='/$ThumbFilePath' title='Enlarge' alt='Enlarge' border='0'></a>";
echo "<div id='name_spacer'>";
($ColCount);
echo "<div id='thumbdesc'>$Title</div>";
echo "</div>";
echo "</div>";
echo "</div>";
}
}
mysql_free_result($result);
?>当我运行这个查询时,它的工作方式是正常的。当我添加COUNT()时,问题出现了。我需要这样的东西:
$result = mysql_query("select AID, ThumbFilePath, Title, DisplayOrder, COUNT(*) AS RecordCount from artwork where SCID = $SCID order by DisplayOrder") or die(mysql_error()); 但是该查询的结果并不是它应该得到的结果。
发布于 2011-11-26 23:07:02
我认为您希望对总行进行计数,但COUNT(*)会自动将它们分组在一起。
考虑使用子查询。
$result = mysql_query("select AID, ThumbFilePath, Title, DisplayOrder, (SELECT COUNT(*) FROM artwork WHERE SCID=$SCID) ResultCount FROM artwork where SCID = $SCID order by DisplayOrder") or die(mysql_error());发布于 2011-11-26 23:12:49
$query = "select AID, ThumbFilePath, Title, DisplayOrder
from artwork where SCID = $SCID order by DisplayOrder";
$result = mysql_query($query) or trigger_error(mysql_error());
$scid_count = mysql_num_rows($result);这是你要找的东西吗?
发布于 2011-11-26 23:06:58
当您添加计数(*)时,您将返回所有行的计数,这将导致单行返回。如果想要原始查询返回的总行数,只需在查询返回后使用mysql_num_rows。
https://stackoverflow.com/questions/8279287
复制相似问题