1

これは、imがindex.phpに結果を表示するために使用する関数であり、style.cssはli´sとdiv´sで正しく実行され、すべてのliで必要な価格またはサービスを表示したいだけです。例:($_GET_ROW['ID'] = '1', $_GET_ROW['ID'] = '2')

function products() { $get = mysql_query('SELECT id, servico, preco FROM loja');

 if (mysql_num_rows($get)==0) {
    echo "Não existem produtos a serem mostrados!";
} else {
    while ($get_row = mysql_fetch_assoc($get)) {
    echo '<li class="l1 i1 column1">';
    echo '<h2>'.**$get_row["servico"]**. '</h2>';
    echo '<div class="basket"><a href="cart.php?adicionar=' .**$get_row['id']='1'**.'">Adicionar</a></p></div>';
    echo '<div class="preco"><em>Preco:</em><strong>'.number_format($get_row['preco'], 2).'</strong><span>EUR</span>';      
    echo '</div>';
    echo '<li class="l2 i0 column0">';
    echo '<h2>'**.$get_row["servico"].**'</h2>';
    echo '<div class="basket"><a href="cart.php?adicionar=' **.$get_row['id']='2'.**'">Adicionar</a></p></div>';
    echo '<div class="preco"><em>Preco:</em><strong>'.number_format($get_row['preco'], 2).'</strong><span>EUR</span>';      
    echo '</div>';

私のデータベース:

-----------------------------------
id servico preco 
-----------------------------------
1 Servico Normal 29.5
-----------------------------------
2 Servico Rapido 32.5
-----------------------------------
4

1 に答える 1

2

while次のように行を反復するにはループが必要なようです。

if (mysql_num_rows($get)==0) {
    echo "Não existem produtos a serem mostrados!";
} else {
    while($get_row = mysql_fetch_assoc($get)) {
    **echo '<li class="l1 i1 column1">';
    echo '<h2>'.$get_row["servico_normal"].'</h2>';
    echo '<div class="basket"><a href="cart.php?adicionar=' .$get_row['id'].'">Adicionar</a></p></div>';
    echo '<div class="preco"><em>Preco:</em <strong>'.number_format($get_row['preco'], 2).'</strong><span>EUR</span>';      
    echo '</div>';**
    }
}

ただし、関数は推奨されておらず、SQL インジェクションに対して脆弱であるため、すぐにmysql_関数の使用を中止する必要があります。または代わりに使用します。mysqli_PDO

更新 1

mysql_関数は公式に非推奨です

私の最初の答えの原則はまだ残っています。データベースに 2 つの行があり、それらを反復処理したいとします。

while ($get_row = mysql_fetch_assoc($get)) {
    $liClass = 'l' . $get_row[id];

    echo '<li class="' . $liClass . ' i1 column1">';
    echo '<h2>' . $get_row[servico] . '</h2>';
    echo '<div class="basket"><p><a href="cart.php?adicionar=' . $get_row['id'] . '">Adicionar</a></p></div>';
    echo '<div class="preco"><em>Preco:</em><strong>' . number_format($get_row['preco'], 2) . '</strong><span>EUR</span>';      
    echo '</div>';
}

最初の行の出力は次のようになります。

<li class="l1 i1 column1">
<h2>Servico Normal</h2>
<div class="basket"><p><a href="cart.php?adicionar=1">Adicionar</a></p></div>
<div class="preco"><em>Preco:</em><strong>29.50</strong><span>EUR</span></div>
于 2012-12-11T18:50:59.913 に答える