拉出所有相关行MySQLi

时间:2013-03-14 06:23:57

标签: php mysql mysqli

我必须从其他人制作的桌子中取出并将其打印到网页上。问题是,列名存储在行中。例如:

FIELD_NAME| FIELD_VALUE
______________________
first-name| John
last-name | Smith

这就是我要抓取数据的方式

$tableRow = '';
$sql ="SELECT * FROM `wp_cf7dbplugin_submits` WHERE form_name = '".$nameOfForm."' ";
$result = $mysqli->query($sql);
while($tableData = $result->fetch_assoc()){

$fieldName = $tableData['field_name'];
$fieldValue = $tableData['field_value'];

//FIRST NAME
if($fieldName == 'first-name'){
$firstName = $fieldValue;
}
//LAST NAME
if($fieldName == 'last-name'){
$lastName = $fieldValue;
}

//BUILD A ROW FOR THE TABLE
$tableRow .='
<th>'.$firstName.'</th>
<th>'.$lastName.'</th>
';

}

当我$tableRow =代替$tableRow .=时,它只有作品 它只会显示一个结果,但是当我$tableRow .=时,它只显示空的但是正确的数量。

如何从这样的表中填充所有结果的html表?

编辑: 我忘了提到整个表格看起来像这样:

<table id="theTable">
            <thead>
                <tr>
                    <th style="width:100px;">First Name</th>
                    <th style="width:100px;">Last Name</th>

                </tr>
            </thead>
            <tbody id="rowsGoHere">


            </tbody>
        </table>

我通过ajax回显PHP结果,

//ECHO BACK RESULTS
    $JSONData = array("true", $tableRow); 
    echo $_GET['callback']."(".json_encode($JSONData).")";

并使用此插入表

var trueEncV = encodeURIComponent("true");

                $.getJSON("pullTableData.php?callback=?",
                      {
                        trueV: trueEncV
                      }, 
                      function(dataBack){
                        alert(dataBack);
                        $('#rowsGoHere').html(dataBack[1]);
                    }
                )

一切都很好,花花公子。

1 个答案:

答案 0 :(得分:0)

根据您更新的代码,<tr>标签丢失。此外,在<tbody>中,您应该使用<td>标记而不是<th>标记。

$tableRow .='
  <tr>
    <td>'.$firstName.'</td>
    <td>'.$lastName.'</td>
  </tr>
';

你能试试吗

echo json_encode($JSONData);

而不是

echo $_GET['callback']."(".json_encode($JSONData).")";