在Php中设置mysql结果集的col宽度

时间:2010-10-25 15:01:27

标签: php mysql

我正在查询MySQL表以获取我在php页面上显示的一些数据。问题是几列的col宽度很小。有什么方法我可以专门改变那些(不是其余的)吗?

目前,我正在通过循环进行打印,所以对于如何精确定位与coloumn对应的内容,我觉得很奇怪。我是否可以解析内容并看看做出决定?

这是我正在使用的代码:

    $result = mysql_query("SELECT * FROM {$table}"); 
    if (!$result) {    die("Query to show fields from table failed"); }

    $fields_num = mysql_num_fields($result);

    echo "<table><tr>"; // Table headers 
    for($i=0; $i<$fields_num; $i++) {    
        $field = mysql_fetch_field($result);    
        echo "<td><b>{$field->name}</td></b>"; 
    } 
    echo "</tr></th>\n"; // Table rows 
    while($row = mysql_fetch_row($result)) {    
        echo "<tr>";

       foreach($row as $cell)
           echo "<td>$cell</td>";

       echo "</tr>\n"; 
    } 
    mysql_free_result($result); 
?>

    </td> </tr> </table>

2 个答案:

答案 0 :(得分:2)

您的HTML表格不正确,表格应如下列出,我是从w3schools网页复制的:

http://www.w3schools.com/html/html_tables.asp

<table>
    <tr>
        <th>Header 1</th>
        <th>Header 2</th>
    </tr>
    <tr>
        <td>row 1, cell 1</td>
        <td>row 1, cell 2</td>
    </tr>
    <tr>
        <td>row 2, cell 1</td>
        <td>row 2, cell 2</td>
    </tr>
</table> 

如果您的HTML已全部设置,那么您可以添加一些CSS来调整单元格的宽度

table, td, th {
border:                         2px solid gray;
border-collapse:                collapse;
text-align:                     left;
width:                          auto;
padding:                        3px;
}

我在这里添加了一些其他功能,但我认为你需要的只是width = auto。让我知道它是如何工作的

您可以通过将每个表设置为具有单独的ID来设置不同的表宽度,然后将css中的id设置为您需要的特定宽度。

<table id="formtable">

然后在css中你可以使用

#formtable th td{
width:                          auto;
}

了解其工作原理并告诉我

答案 1 :(得分:0)

我建议用css可以实现 设置一些样式显示列是适当的宽度