我想从数据库中取出4个不同id的行。并在四个div中显示。每个div都包含一个基于字符的唯一id。我这样做是为了一次又一次地编写相同的查询。我想少一些质疑。下面给出了我的代码。
<?php
$query = mysql_query("select * from acms_pages where id = 40");
$sql = mysql_fetch_array($query);
?>
<li id="pgAbout">
<section class="content">
<div class="one_half_last"><?php echo $sql['text']; ?></div>
</section>
</li>
<section class="content">
<?php
$query = mysql_query("select * from acms_pages where id = 41");
$sql1 = mysql_fetch_array($query);
?>
<li id="pgPortfolio">
<div class="fullwidth"><?php echo $sql1['text']; ?></div>
</section>
</li>
<?php
$query = mysql_query("select * from acms_pages where id = 42");
$sql2 = mysql_fetch_array($query);
?>
<li id="pgServices">
<section class="content">
<div class="one_half_last"><?php echo $sql2['text']; ?></div>
</section>
</li>
<?php
$query = mysql_query("select * from acms_pages where id = 43");
$sql3 = mysql_fetch_array($query);
?>
<li id="pgPrices">
<section class="content">
<div class="one_half"><?php echo $sql3['text']; ?></div>
</section>
</li>
这可能属于programmers.stackexchange.com,但通常的方法是将查询重写为一个单独的查询,where子句将所有四个条件都包含在一起。
然后,您可以独立访问每一行并呈现div。
要回答您的问题(我认为…),您可以在查询中使用OR:
mysql_query("select * from acms_pages where id = 40 OR id = 41 OR id = 42");
但是,您应该使用mysqli:
$link = mysqli_connect("localhost", "my_user", "my_password", "mydb");
if ($result = mysqli_query($link, "select * from acms_pages where id = 40 OR id = 41 OR id = 42"))
{
printf("Select returned %d rows.n", mysqli_num_rows($result));
while ($row = mysqli_fetch_row($result)) {
printf ("%s", $row[0]); //first column value here
}
/* free result set */
mysqli_free_result($result);
}