2011-03-17 57 views
0

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

<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++; 
} 

?> 

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

回答

0

它看起来像要保存的变量$f2-name但是你echo'ing $f2,同样有$f3$f4

如果你想让你的命名模式,你必须要这么做:

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

谢谢,但我认为我为每个像这样的所有行做了这样的事情:​​<?php echo $ f1; ?>是不是代码段<?php echo $ f1; ?>应该打印该值。我不太明白。 – 2011-03-17 03:38:31

+0

根据您的更改编辑帖子。 – 2011-03-17 03:41:04

+0

感谢迈克,我做了你的建议,但我仍然得到空白表。还有什么建议?如何尝试连接到统一网络服务器上的数据库有问题吗? – 2011-03-17 03:53:08

0

与您提供的链接比较,查看您的代码。你缺少$ num变量初始化

这一个: $ num = mysql_numrows($ result);

所以我想你的循环不会迭代,增加这可能会解决你的问题。在代码中可能会丢失更多关于您所介绍的代码的更多内容。

+0

感谢Ace,我很感激。我会试试看,并告诉你它是如何发生的。 – 2011-03-17 05:36:43

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 
} 
?> 
0

我测试过此代码,我发现有必要把引号localhostmysql_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>