3

テーブルを作成していて、特定の方法でレイアウトし、DB からデータを取得する必要があります。一番上の例でユーザー名がある場所にセットアップしようとしています...

ジム・クリス・アレン・リック
 7 8 4 5

私のコードは次のようになり、何時間もいじっていましたが、なぜ私が望むようにセットアップできないのかわかりません。どんな助けでも大歓迎です。while ループです。

   while ($pickresults= mysql_fetch_assoc($picksquery)) {
//first row                         
    echo '<th> '.$pickresults['username'].' </th> ';  
        echo ' <td> '.$pickresults['firstgame'].' </td> '; } 
4

4 に答える 4

3

まず、テーブルの HTML コードを学習する必要があります。thあなたのコードは、通常の列項目 ( ) の隣にテーブル ヘッダー ( ) を配置していますtd。最初にヘッダーをループしてから、次の行ループで列項目をループするか、文字列を構築する必要がありますecho

$headers = $col = "";
while($pickresults= mysql_fetch_assoc($picksquery)){
    $headers .= "<th> {$pickresults['username']} </th>";
    $col .= "<td> {$pickresults['firstgame']} </td>";
}

echo "<table><tr>$headers</tr><tr>$col</tr></table>";
于 2013-02-28T16:07:53.380 に答える
0

まず表のヘッダーと本体を集め出力します。あんたのやり方、htmlはこんな感じだったけど、htmlのどこが悪いのかわかりやすいかな

<th>name</th>
<td>value></td>
<th>another name</th>
<td>another value</td>

必要なものはこれです:

$td = '';
$th = '';
while ($pickresults= mysql_fetch_assoc($picksquery)) {                      
    $th .= '<th> '.$pickresults['username'].' </th> ';  
    $td .= '<td> '.$pickresults['firstgame'].' </td> ';
}
echo '<table><tr>' . $th . '</tr><tr>' . $td . '</tr>' . '</table>';
于 2013-02-28T16:05:20.417 に答える
0

あなたの構造は、TH、TD、TH、TD などを作成しています。

これはテーブルを作成する方法ではありません。最初に 4 つの TH を作成する必要があり、その後 4 つの TD を作成できます。

編集: Marko D は、私が何を意味するかを説明するコードを提供しています。

于 2013-02-28T16:05:28.910 に答える
0

<th>すべてのユーザー名を-tagsに記述する必要があります。最初に配列に入れ、配列からテーブルに入れます...

while ($pickresults= mysql_fetch_assoc($picksquery)) {

    $picked[]=$pickresults;

}

echo "<table><tr>"; // create table and 1st row

foreach ($picked as $pick) {

     echo "<th>{$pick['username']}</th>"; // create 1st line headers

}

echo "</tr><tr>"; // close 1st row and open 2nd

foreach ($picked as $pick) {

    echo "<td>{$pick['firstgame']}</td>"; // create 2nd line...

}

echo "</tr></table>"; // close 2nd row and table
于 2013-02-28T16:12:51.110 に答える