0

私はこれを理解しようと懸命に努力してきましたが、近いとはいえ、何かを理解することはできません. 私のコードは次のとおりです...

 <?php
include('functions.php');
connect();
if (isset($_POST['submit'])){
    $fieldName = $_POST['fieldName'];
    foreach($fieldName AS $key=>$values){
        $fieldList .= $values;

    }
    $fieldList = implode(',', $fieldName); //comma separated list
    echo $rowList;
    $sql = mysql_query("SELECT ".$fieldList." FROM members");
    $row = mysql_fetch_assoc($sql);
    echo "<table>";
    echo "<tr>";
    foreach ($row as $col => $value) {
        echo "<th>";
        echo $col;
        echo "</th>";
    }
    echo "</tr>";
    while ($row = mysql_fetch_assoc($sql)){
        echo "<tr><td>".$row['city']."</td><td>".$row['firstName']."</td><td>".$row['cellPhone']."</td></tr>";//***HOPING TO GENERATE THIS DYNAMICALLY WITH VARIABLES...MAYBE ANOTHER FOREACH???
    }
    echo "</table>";

}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"  
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head>
</head>
<body>
<form action="" method="post" name="form">
<select name="fieldName[]" multiple="yes" id="fieldName">
    <option value="">Select all that apply</option>
    <option value="city">City</option>
    <option value="lastName">Last Name</option>
    <option value="firstName">First Name</option>
    <option value="state">State</option>
    <option value="cellPhone">Cell Phone</option>
</select>           
<input type="submit" name="submit" value="SUBMIT"/>
</form>
</body>
</html>

私はとても近くにいますが、上記の while ループの間にある「echo ステートメント」を作成する方法がわかりません。私の推測では$fieldList .= $values; 、ユーザーがドロップダウン ボックスで選択した項目の数に応じて、必要に応じてステートメントが大きくなる ... のようなことをすると思います。

4

1 に答える 1

0

私はちょうどそれを理解しました。私が探していた動的テーブルリストを生成するために使用したコードを以下に見つけてください...

while ($row = mysql_fetch_assoc($sql)){
    echo "<tr>";
    foreach ($fieldName as $value){
        echo "<td>".$row[$value]."</td>";
    }
    echo "</tr>";
}

これが、単純なレポート機能を作成しようとしている人に役立つことを願っています.

于 2013-07-10T22:20:25.503 に答える