-3

データベースから 4 つの異なる ID の行を取得したいと考えています。4 つの 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>
4

2 に答える 2

0

これはおそらくprogrammers.stackexchange.comに属しますが、一般的なアプローチは、4つの条件すべてをORで結合したwhere句を使用して、クエリを単一のクエリとして書き直すことです。

次に、各行に個別にアクセスして、div をレンダリングできます。

于 2012-08-21T22:55:26.903 に答える
0

あなたの質問に答えるには(私は思う...)、クエリで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);
}
于 2012-08-21T22:55:54.290 に答える