php读取mysql,如何以表格显示数据?

下面这断代码怎样修改,才能使它以一个4行6列的表格显示数据.
大体意思是随机读取表“link2”中的两个字段"name"和"url"组成链接<a href=url>name</a>然后以一个4行6列字表格输出。
因为我不太懂php,不知道如何输出<tr>换行,所以只好在百度知道里求教。

<?php
include "config.php";
$link = mysql_connect("$dbhost",$dbuser,$dbpassword);
mysql_select_db("$dbname",$link);
$q = "SELECT * FROM link2 order by rand() limit 24"; //SQL查询语句
mysql_query("SET NAMES GB2312");
$rs = mysql_query($q, $link); //获取数据集
if(!$rs){die("Valid result!");}
echo "<table><tr>";
while($row = mysql_fetch_row($rs)) echo " <td><a href= $row[2]'>$row[1]</a></td> "; //显示数据
echo "</tr></table>";
mysql_free_result($rs); //关闭数据集
mysql_close();
?>

<?php
//设置编码格式
header("Content-type:text/html;charset=utf-8");
//链接数据库
$conn = mysql_connect("localhost","root","");
//选择要操作的数据库
mysql_select_db('act1',$conn);
//设置操作数据库编码格式
mysql_query("set names utf8");
//执行查询操作
$re= mysql_query("select user_name,phone from user");
?>
<table border='1px'>
<!-- 表格头部 -->
<tr>
<td>用户名</td><td>电话</td>
</tr>
<?php
//每循环一次,取一行数据记录显示在一行中
while($row=@mysql_fetch_row($re)){
?>
<tr>
<td><?php echo $row[0];?></td><td><?php echo $row[1];?></td>
</tr>
<?php
}    
?>
</table>

显示结果如下:

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-11-22
<html>
<head>
<title>浏览表中记录</title>
</head>
<body>
<center>
<?php
$db_host=localhost; //MYSQL服务器名
$db_user=root; //MYSQL用户名
$db_pass=""; //MYSQL用户对应密码
$db_name="test"; //要操作的数据库
//使用mysql_connect()函数对服务器进行连接,如果出错返回相应信息
$link=mysql_connect($db_host,$db_user,$db_pass)or die("不能连接到服务器".mysql_error());
mysql_select_db($db_name,$link); //选择相应的数据库,这里选择test库
$sql="select * from test1"; //先执行SQL语句显示所有记录以与插入后相比较
$result=mysql_query($sql,$link); //使用mysql_query()发送SQL请求
echo "当前表中的记录有:";
echo "<table border=1>"; //使用表格格式化数据
echo "<tr><td>ID</td><td>姓名</td><td>邮箱</td><td>电话</td><td>地址</td></tr>";
while($row=mysql_fetch_array($result)) //遍历SQL语句执行结果把值赋给数组
{
echo "<tr>";
echo "<td>".$row[id]."</td>"; //显示ID
echo "<td>".$row[name]." </td>"; //显示姓名
echo "<td>".$row[mail]." </td>"; //显示邮箱
echo "<td>".$row[phone]." </td>"; //显示电话
echo "<td>".$row[address]." </td>"; //显示地址
echo "</tr>";
}
echo "</table>";
?>
</center>
</body>
</html>
第2个回答  推荐于2018-02-23
echo "<table><tr>";
$i=1;
while($row = mysql_fetch_row($rs)){
if($i==7){
$i=1;
echo " </tr><tr><td><a href= $row[2]'>$row[1]</a></td>";
}else{
echo " <td><a href= $row[2]'>$row[1]</a></td> "; //显示数据
}
$i++;
}
echo "</tr></table>";
没测试,不知道行不行,我觉得像这样的显示用列表在CSS样式控制就不会有这个换行标签的问题了,有问题HI我本回答被提问者和网友采纳
第3个回答  2009-09-01
<?php
include "config.php";
$link = mysql_connect("$dbhost",$dbuser,$dbpassword);
mysql_select_db("$dbname",$link);
$q = "SELECT * FROM link2 order by rand() limit 24"; //SQL查询语句
mysql_query("SET NAMES GB2312");
$rs = mysql_query($q, $link); //获取数据集
if(!$rs){die("Valid result!");}
echo "<table>";
$i=0;
while($row = mysql_fetch_row($rs)){
if($i % 6 == 0) echo '<tr>';
echo " <td><a href= $row[2]'>$row[1]</a></td> "; //显示数据
$i++;
}
echo "</tr></table>";
mysql_free_result($rs); //关闭数据集
mysql_close();
?>

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网