需要使用PHP在页面上显示MySQL表

时间:2013-12-14 23:26:22

标签: php html mysql database html-table

我正在尝试显示一个表并继续出错。那些有更好编码技能的人可以帮助我吗?

以下是代码:

<?php 

// connect to the database

$host = "###";
$username = '###';
$pass = '###';

mysql_connect($host,$username,$pass) or die(mysql_error());
mysql_select_db("Employees") or die(mysql_error());

// select everything from the table

$query = "SELECT * FROM Employees";
$result = mysql_query($query') or die(mysql_error());

echo "<table>";
echo "<tr>";

while( ($row = mysql_fetch_array($result)))
{
    echo "<td>".$row['employeeid']."</td>";
    echo "<td>".$row['firstname']."</td>";
    echo "<td>".$row['lastname']."</td>";
    echo "<td>".$row['department']."</td>";
}

echo "</tr>";
echo "</table>";

// disconnect from the database

mysql_close();

&GT;


页面运行时会产生以下错误:

  

解析错误:语法错误,第36行/home/content/35/4683335/html/crosshill/display.php中的意外T_CONSTANT_ENCAPSED_STRING

第34行是:echo "<td>".$row['employeeid']."</td>";

2 个答案:

答案 0 :(得分:1)

我建议你需要检查3分:

您可以在开发环境中使用or die(mysql_error())来检查是否有错误(与sql函数相关)。

  1. 连接

    mysql_connect($host,$username,$pass) or die(mysql_error());

  2. 选择db

    mysql_select_db("Employees") or die(mysql_error());

  3. 查询(我看到你的查询是正确的,但可能你的表名错了,记住名字是区分大小写的)

    $result = mysql_query($query) or die(mysql_error());

答案 1 :(得分:0)

我注意到你的数据库和你的表一样被称为Employees,这是一个错误还是两个都是同一个名字?

此处也有语法错误:

$query = "SELECT * FROM Employees";
$result = mysql_query($query') or die(mysql_error());

删除'所以它是这样的:

$result = mysql_query($query) or die(mysql_error());

试试这个:

$query = "SELECT * FROM Employees";
$result = mysql_query($query) or die(mysql_error());

if(mysql_num_rows($result)< 1){

   echo 'no rows founds';

} else {


echo "<table>";
echo "<tr>";

while( ($row = mysql_fetch_assoc($result)))
{
    echo "<td>".$row['employeeid']."</td>";
    echo "<td>".$row['firstname']."</td>";
    echo "<td>".$row['lastname']."</td>";
    echo "<td>".$row['department']."</td>";
}

echo "</tr>";
echo "</table>";

}

旁注: 根据其他人的建议,您应该切换到mysqli_*pdo