Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP+MySQL将MySQL数组打印到表中_Php_Mysql_Arrays_Printing_Html Table - Fatal编程技术网

PHP+MySQL将MySQL数组打印到表中

PHP+MySQL将MySQL数组打印到表中,php,mysql,arrays,printing,html-table,Php,Mysql,Arrays,Printing,Html Table,我在下面有一个查询函数代码,用于读取数据库,我想知道如何将打印结果循环输出到一个类似以下的表中: 我用这个来得到它: $visa=$DB->query("SELECT fname,lname,email FROM users"); echo '<table BORDERCOLOR=black>'; ?> <tr> <th>Name</th><th>LastName</th>

我在下面有一个查询函数代码,用于读取数据库,我想知道如何将打印结果循环输出到一个类似以下的表中:

我用这个来得到它:

$visa=$DB->query("SELECT fname,lname,email FROM users");
    echo '<table BORDERCOLOR=black>';
   ?>
    <tr>
        <th>Name</th><th>LastName</th><th>E-Mail</th>
    </tr>
    <?php
    echo "<td>";
    echo $visa[0]['fname'];
    echo "</td>";
    echo "<td>";
    echo $visa[0]['lname'];
    echo "</td>";
    echo "<td>";
    echo $visa[0]['email'];
    echo "</td>";
查询功能:

function query($querytext) {
        $rs = mysql_query($querytext, $this->_link);
        if($this->_debug) {
            $this->addDebugMessage("\t<tr>\n\t\t<td class=\"debug_nr\">".$this->_queryCount++."</td>\n\t\t<td class=\"debug_queInfo\"><b>Query: (".@mysql_num_rows($rs).")</b></td>\n\t\t<td>" . htmlspecialchars($querytext) . "</td>\n\t</tr>\n");
            if(mysql_error() != '') {
                $this->addDebugMessage("\t<tr>\n\t\t<td class=\"debug_nr\">".$this->_queryCount++."</td>\n\t\t<td class=\"debug_queInfo\"><b>Error #".mysql_errno($this->_link)." :</b></td>\n\t\t<td>" . htmlspecialchars(mysql_error($this->_link)) . "</td>\n\t</tr>\n");
            }
        }
        if($rs) {
            $num_rows = @mysql_num_rows($rs);
            if($num_rows) {
                if($num_rows > 0) {
                    $rsarray = array();
                    while($line = mysql_fetch_array($rs , MYSQL_ASSOC)) {
                        array_push($rsarray, $line);
                    }
                    mysql_free_result($rs);
                    return $rsarray;
                } else {
                    return false;
                }
            } else {
                if(mysql_affected_rows($this->_link) > 0) {
                    return true;
                } else {
                    return false;
                }
            }
        } else {
            return false;
        }
    }

用于或foreach循环:

<?php foreach($visa as $v) {
echo "<td>";
echo $v['fname'];
echo "</td>";
echo "<td>";
echo $v['lname'];
echo "</td>";
echo "<td>";
echo $v['email'];
echo "</td>";
}

在您的代码中,$visa是一个查询结果数组,要显示其中的所有值,您只需在该数组上进行太多的循环,您也可以通过字段名进行循环,如下所示:

<?php
// replace with your own array from the DB query
$visas = array(
        array(  'name' => 'John',
            'age' => '43'),
        array( 'name' => 'Sally',
            'age' => '36')
    );
echo "Visas<br/><table border='1'>";
foreach($visas as $visa) {
    echo "<tr>";
    foreach($visa as $key => $value) {
        echo "<td><em>$key:</em></td><td>$value</td>";
    }
    echo "</tr>";
}
echo "<table>";

谢谢你,完全做到了,我不知道这些foreach循环在php中是如何工作的。你知道有没有办法在name/lastname/email之间添加行?我可以在8分钟内接受你的回答你的意思是什么?您可以使用CSS或向表标记添加边框,如下所示:。我希望我没有误解你的意思: