Hello,
I'm working to develop a new website but have run into some problems. I'm trying to build a links database, and until now everything has worked properly. I can add links to the database and then retrive them, but when I try to retrive a special number of them, they simply don't show.
Maybe some code could clear things up:
class links
{
function show($number)
{
global $dbconn;
$query = mysql_query("SELECT * FROM `links` WHERE `featured` = '1' ORDER BY visits DESC",$dbconn);
$query2 = mysql_query("SELECT * FROM `links` WHERE `featured` = '0' ORDER BY visits DESC",$dbconn);
echo '<table bgcolor="black" border="0" cellspacing="0" cellpadding="0" width="100%"><tr><td colspan="2"><h3>Featured links</h3></td></tr>';
while ($results = mysql_fetch_array($query))
{
echo '<tr><td><a href="index.php?dir=links&id=' . $results["id"] . '">' . $results["link"] . '</a></td><td rowspan="2"><p>Description: ' . $results["description"] . '</p></td></tr><tr><td colspan="2"><p>Visits: <b>' . $results["visits"] . '</b></p></td></tr>';
if (login_check($_SESSION["user"],$_SESSION["pw"]) == "admin")
{
echo '<tr><td colspan="2"><a href="index.php?dir=acc&dir2=links&id=' . $results["id"] . '">Update/delete</a></td></tr>';
}
echo '<tr><td> </tr></td>';
}
echo '</table>';
echo '<table bgcolor="black" border="0" cellspacing="0" cellpadding="0" width="100%"><tr><td colspan="2"><h3>Non-featured links</h3></td>';
if ($number == "all")
{
while ($results = mysql_fetch_array($query2))
{
echo '<tr><td><a href="index.php?dir=links&id=' . $results["id"] . '">' . $results["link"] . '</a></td><td rowspan="2"><p>Description: ' . $results["description"] . '</p></td></tr><tr><td><p>Visits: <b>' . $results["visits"] . '</b></p></td></tr>';
if (login_check($_SESSION["user"],$_SESSION["pw"]) == "admin")
{
echo '<tr><td colspan="2"><a href="index.php?dir=acc&dir2=links&id=' . $results["id"] . '">Update/delete</a></td></tr>';
}
echo '<tr><td> </tr></td>';
}
}
else
{
for ($i=0;$results = mysql_fetch_array($query2) && $i<$number;$i++) // <--- this query dosen't work :/
{
echo '<tr><td><a href="index.php?dir=links&id=' . $results["id"] . '">' . $results["link"] . '</a></td><td rowspan="2"><p>Description: ' . $results["description"] . '</p></td></tr><tr><td><p>Visits: <b>' . $results["visits"] . '</b></p></td></tr>';
if (login_check($_SESSION["user"],$_SESSION["pw"]) == "admin")
{
echo '<tr><td colspan="2"><a href="index.php?dir=acc&dir2=links&id=' . $results["id"] . '">Update/delete</a></td></tr>';
}
echo '<tr><td> </tr></td>';
}
}
echo '</table>';
}
// Other functions...
}
And as things couldn't get more strange (to me that is): Let's say i've got 3 links in my database and $number = "5" the function will loop three times, as it retrived the data but wasn't able to print it out :/.
thanks, luddeb