Jump to content

mysql_fetch_array() error


luddeb

Recommended Posts

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

Link to comment
https://forums.phpfreaks.com/topic/2707-mysql_fetch_array-error/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.