1

私は非常に単純なウェブショップに取り組んでいます。2 x <td>4のテーブルでさまざまな製品をエコーする必要があります<tr>が、現在はさまざまな製品を下に表示するだけです。うまくいけば、ここの誰かが私を助けてくれます。

$result=mysql_query("select * from products");
while($row=mysql_fetch_array($result)) {

    $artikel = '<div style="background-color:#E3E3E3;width:200px;height:200px;"><a href=""><img style="padding-top:10px;padding-left:25px;width:150px;height:150px;" src="'.htmlspecialchars($row['picture']).'"></a><br><div align="center"><b>'.htmlspecialchars($row['name']).'</b><br><h6>&euro;'.htmlspecialchars($row['price']).'</h6></div></div>';

    echo '<table><tr><td>'.$artikel.'</td>';
    echo '</table>';
}
4

3 に答える 3

1

2 x 4 の表が表示されるのはなぜですか?

すべての製品を独自のテーブルに配置するため、最初にtableタグをループの外に移動し、すべての製品の後に新しい行を追加するロジックを追加する必要がありxます。

ディメンションが固定されているためテーブルは必要ないようですが、テーブルを削除しdivてcssを使用して必要なグリッドを取得できます。

于 2012-06-28T17:25:41.990 に答える
0

これがコード全体である場合は、trタグがありません。レイアウトがずれている可能性があります。

ブレークを使用する代わりに、複数のdiv(または、より快適な場合はテーブルレイアウト)を使用することをお勧めします。ブレークはすべてのブラウザーで常に同じように処理されるとは限らないためです。

于 2012-06-28T17:31:37.660 に答える
0

レコードごとに新しいテーブルを作成する代わりに、レコードごとに 1 つの行を使用できます。

  $result=mysql_query("select * from products");
   if(mysql_num_rows($result) > 0){
       echo '<table>';
       while($row=mysql_fetch_array($result)) {
            $artikel = '<div style="background-color:#E3E3E3;width:200px;height:200px;"><a href=""><img style="padding-top:10px;padding-left:25px;width:150px;height:150px;" src="'.htmlspecialchars($row['picture']).'"></a><br><div align="center"><b>'.htmlspecialchars($row['name']).'</b><br><h6>&euro;'.htmlspecialchars($row['price']).'</h6></div></div>';
            echo '<tr><td>'.$artikel.'</td></tr>';
       }
       echo '</table>';
   }
于 2012-06-28T17:39:46.760 に答える