我正在尝试从以下数据库数据中获取数据:
用这个CSS&显示数据。 HTML代码:
<div class="event">
<img src="http://dummyimage.com/80x70/f00/fff.png" alt="picture" />
<p>Room 2</p>
<p class="patient-name">Jon Harris</p>
<p class="event-text">This is a pixel. A flying pixel!</p>
<p class="event-timestamp">feb 2 2011 - 23:01</p>
</div>
.event {
display:block;
background: #ececec;
width:380px;
padding:10px;
margin:10px;
overflow:hidden;
text-align: left;
}
.event img {
display:block;
float:left;
margin-right:10px;
}
.event p {
font-weight: bold;
}
.event img + p {
display:inline;
}
.patient-name {
display:inline;
color: #999999;
font-size: 9px;
line-height:inherit;
padding-left: 5px;
}
.event-text{
color: #999999;
font-size: 12px;
padding-left: 5px;
}
.event-timestamp{
color: #000;
padding-left: 5px;
font-size: 9px;
}
这是我的PHP代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>DASHBOARD - Arduino 3</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<?php
$con = mysql_connect("localhost","*****","***");
if(!con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("arduino_db",$con);
$result = mysql_query("SELECT * FROM events");
//Start container
echo " <div id='background_container'> ";
while($row = mysql_fetch_array($result))
{
echo "<div class='event'>";
echo "<img src='img/ev_img/red.jpg' alt='picture' />";
echo "<p>" . $row['inneboende'] . "</p>";
echo "<p class='patient-name'>" . "$row['overvakare']" . "</p>";
echo "<p class='event-text'>" . "$row['handelse']" . "</p>";
echo "<p class='event-timestamp'>" . "$row['tid']" . "</p>";
echo "</div>";
}
//end container
echo "</div>"
mysql_close($con);
?>
</body>
</html>
我得到的只是一个空白页面,我无法理解为什么。
答案 0 :(得分:1)
你在这里错过了一个分号(我添加了它):
//end container
echo "</div>";
您应该删除这些行上$row
数组变量周围的引号,如下所示:
echo "<p class='patient-name'>" . $row['overvakare'] . "</p>";
echo "<p class='event-text'>" . $row['handelse'] . "</p>";
echo "<p class='event-timestamp'>" . $row['tid'] . "</p>";
通过这些更改,它可以正常工作(我对其进行了测试)。
我认为这是你发布实际连接细节的一个好处:)
正如评论中所提到的,您现在应该明确地更改您的密码。
此外,在开发过程中,您应确保启用错误报告,see this answer了解各种方法。
答案 1 :(得分:1)
row['overvakare']
,$row['handelse']
和$row['tid']
不应用双引号括起来。由于它们是该字符串中唯一的变量,因此只需删除封闭的双引号。echo "</div>"
最后需要;
。脚本在修复这些错误后执行(并显示数据)。
答案 2 :(得分:0)
一些事情:
如果mysql_query
失败,则不会输入您的循环
您正在使用mysql_fetch_array
但尝试作为关联数组进行访问。你想要mysql_fetch_assoc
从安全角度来看,如果从用户输入获取数据库值,则不应回显出数据库值。这可能导致令人讨厌的事情,如xss注入。确保使用strip_tags
和其他过滤功能之类的东西是安全的。