在html网页上显示数据库内容

时间:2011-03-17 03:21:08

标签: php mysql html

我试图在phpMyAdmin中显示数据库中的所有记录。此数据库位于我的计算机上,由于最近安装了Uniform Server软件,因此该计算机当前是服务器。我是构建php和html代码的新手。我使用了此链接http://www.siteground.com/tutorials/php-mysql/display_table_data.htm中的最后一个竞争纪录片代码,这是我网页上的输出。

<HTML>

<HEAD>

<TITLE> LOG INFORMATION FOR ALL customers </TITLE>

</HEAD>


<BODY>

<H1> LOG INFORMATION FOR ENTIRE DATABASE </H1>

<?php


$database="mobile_app_tracking_log";

mysql_connect(localhost);
@mysql_select_db($database) or die( "Unable to select database");
$query="SELECT * FROM tablename";
$result=mysql_query($query);



mysql_close();
?>

<table border="2" cellspacing="7" cellpadding="7">
<tr>
<th><font face="Arial, Helvetica, sans-serif">Index</font></th>
<th><font face="Arial, Helvetica, sans-serif">Identification Number</font></th>
<th><font face="Arial, Helvetica, sans-serif">Date</font></th>
<th><font face="Arial, Helvetica, sans-serif">Time</font></th>
<th><font face="Arial, Helvetica, sans-serif">Application</font></th>
<th><font face="Arial, Helvetica, sans-serif">Usage</font></th>
<th><font face="Arial, Helvetica, sans-serif">Latitude</font></th>
<th><font face="Arial, Helvetica, sans-serif">Longitude</font></th>
<th><font face="Arial, Helvetica, sans-serif">Address</font></th>
</tr>

<?php
$i=0;
while ($i < $num) {


$f1=mysql_result($result,$i,"Index");
$f2-name=mysql_result($result,$i,"Identification Number");
$f3-name=mysql_result($result,$i,"Date");
$f4-name=mysql_result($result,$i,"Time");
$f5-name=mysql_result($result,$i,"Application");
$f6-name=mysql_result($result,$i,"Usage");
$f7-name=mysql_result($result,$i,"Latitude");
$f8-name=mysql_result($result,$i,"Longitude");
$f9-name=mysql_result($result,$i,"Address");
?>

<tr>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f1; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f2; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f3; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f4; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f5; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f6; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f7; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f8; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $f9; ?></font></td>
</tr>


<?php

$i++;
}

?>

有人可以告诉我为什么数据库中的记录没有显示?任何帮助将不胜感激。

4 个答案:

答案 0 :(得分:0)

看起来您要保存变量$f2-name但是您正在回复$f2,与$f3$f4等相同。

如果您想保留您的命名架构,您可以这样做:

echo $f2-name;
echo $f3-name;
// etc

答案 1 :(得分:0)

查看您的代码与您提供的链接进行比较。你错过了$ num变量初始化

这一个: $ NUM = mysql_numrows($结果);

所以我猜你的循环不会迭代,添加这可能会解决你的问题。更好地了解您提到的代码可能会丢失代码。

答案 2 :(得分:0)

检查此代码..这可能对您有帮助..

<HTML>
<HEAD>
<TITLE> LOG INFORMATION FOR ALL customers </TITLE>
</HEAD>
<BODY>
<H1> LOG INFORMATION FOR ENTIRE DATABASE </H1>

<?php
$user = 'root';
$password = '';
$database="test";

mysql_connect(localhost,$user, $password);
@mysql_select_db($database) or die( "Unable to select database");
echo $query = "SELECT * FROM customer";
$result = mysql_query($query);

mysql_close();
?>

<table border="2" cellspacing="7" cellpadding="7">
<tr>
<th><font face="Arial, Helvetica, sans-serif">Index</font></th>
<th><font face="Arial, Helvetica, sans-serif">Customer Name</font></th>
<th><font face="Arial, Helvetica, sans-serif">Sex</font></th>
</tr>

<?php

while ($row = mysql_fetch_assoc($result)) {

?>

<tr>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $row[id]; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $row[customer_name]; ?></font></td>
<td><font face="Arial, Helvetica, sans-serif"><?php echo $row[sex]; ?></font></td>
</tr>


<?php
}
?>

答案 3 :(得分:0)

我已经测试了这段代码,我发现有必要在localhost行中mysql_connect附近加上引号

mysql_connect('localhost',$user, $password);

以及$row结果行,以避免获得"Notice: Use of undefined constant" errors.

<td><font face="Arial, Helvetica, sans-serif"><?php echo $row['id']; ?></font></td>