-->

SQL displaying same row

2019-08-24 02:26发布

问题:

I am trying to take all the records in my database and display them row by row in a table. It only displays the same row again and again. How can I make each row of the table display the next result in the database?

<?php
// Formulate query
$logo = "SELECT logo from stores";
$cat = "SELECT cat from stores";
$commission = "SELECT commission from stores";
$link = "SELECT link from stores";
$name = "SELECT name from stores";
// Perform query
$result1 = mysql_query($logo) or die;
$result2 = mysql_query($cat) or die;
$result3 = mysql_query($commission) or die;
$result4 = mysql_query($link) or die;
$result5 = mysql_query($name) or die('Something went wrong');
//////////////////////////////////////
//////////////////////////////////////
do {
//////////////////////////////////////
$rlogo = mysql_fetch_assoc($result1);
$a = implode($rlogo);
//////////////////////////////////////
$rcat = mysql_fetch_assoc($result2);
$b = implode($rcat);
//////////////////////////////////////
$rcommission = mysql_fetch_assoc($result3);
$c = implode($rcommission);
//////////////////////////////////////
$rlink = mysql_fetch_assoc($result4);
$d = implode($rlink);
//////////////////////////////////////
$rname = mysql_fetch_assoc($result5);
$e = implode($rname);
//////////////////////////////////////
$x = $x + 1;
    } while ($x <= 1);
?>

回答1:

if you're incrementing $x but the loop ends if it reaches 1... it ends right away?

   $x = $x + 1;
} while ($x <= 1);

normally, people set it up like this:

 $query = "select logo, cat, commission, link, name  from stores";

 $result = mysql_query($query); 

 print "<table>";

 // table headers 
 print "<tr><th>logo</th>
            <th>cat</th>
            <th>comission</th>
            <th>link</th>
            <th>name</th></tr>";

 while($row = mysql_fetch_assoc($result))
 {
     print "<tr>"; 

     foreach ($row as $column => $value) 
     {
         print "<td>".$value."</td>";
     }

      // or you can print the table cells like this: 
      //  <td> $row['logo']      </td>
      //  <td> $row['cat']       </td>
      //  <td> $row['commission']</td>
      //  <td> $row['link']      </td>
      //  <td> $row['name']      </td>

     print "</tr>"; 
 }

 print "</table>;

also, mysql_ functions are out-dated and will be removed from PHP soon so if you're learning, you should learn PDO or mysqli_ instead.



标签: php mysql sql