我有以下HTML / PHP / CSS / JavaScript页面:
<html>
<head>
<title>Test Guestbook</title>
<style type="text/css">
#titles {
font-family: "Comic Sans MS";
font-size: 15px;
}
#charremain {
font-family: "Comic Sans MS";
font-size: 12px;
}
.tb {
border-top: #000000 1px solid;
border-bottom: #000000 1px solid;
border-left: #000000 1px solid;
border-right: #000000 1px solid;
background-color: "#000000";
font-family: "Comic Sans MS";
resize: none;
}
.submit {
background-color: #FFCC99;
font-family: "Comic Sans MS";
}
table {
text-align: center;
width: 100%;
}
</style>
<script type="text/javascript">
function count(x){
if(x <= 100) {
document.getElementById('remain').innerHTML = 100 - x;
}
}
</script>
<script type="text/javascript">
function validate(form){
if(form.post.value == "" || form.name.value == ""){
alert("Please fill in all fields");
return false;
} else {
return true;
}
}
</script>
</head>
<body bgcolor='#FFFCC'>
<div id='titles' align='center'>
<form action='test.php' method='POST' onSubmit='return validate(this);'>
Submit a post: <br \>
<textarea id='post' class='tb' cols='25' rows='3' name='post' maxLength='100' onKeyUp="count(this.value.length)"></textarea>
<p id='charremain'>Characters Remaining: <span id='remain'>100</span></p>
Your name: <input class='tb' type='text' name='name' id='name'><br \>
<input class='submit' type='submit' value='Submit'><br \>
</form>
<br \><br \>
<H2>Current Posts:</H2>
</div>
<?php
$con = mysql_connect('localhost','root','') or die("Could not connect to localhost, check connection!");
mysql_select_db('test') or die("Could not find database");
$sql = mysql_query("SELECT * FROM `posts`");
$sqlCnt = mysql_num_rows($sql);
if($sqlCnt != 0) {
echo "<table align='center'>
<tr><td><u><H4>Message</H4></u></td>
<td><u><H4>Poster</H4></u></td></tr>";
while($row = mysql_fetch_array($sql)) {
echo "<tr><td>";
echo $row['message'];
echo "</td><td>";
echo $row['poster']
echo "</td></tr>";
}
} else {
echo "<div align='center'>Sorry, no posts found!</div>";
}
?>
</table>
</body>
网页显示在应该处理它之后的所有内容,而不是继续进行while()循环。有什么想法吗?
更新的 我添加了丢失的分号,但没有运气。它是一个HTML文件,这是我看到的截图:
http://img846.imageshack.us/img846/9867/phpx.png
更新2:
else
语句的if()
部分正在运行,但未处理$sqlCount != 0
代码时。从第一个</tr>
语句的第3行开始echo
语句之后的所有内容都会从右括号开始回显。
答案 0 :(得分:2)
确保您的文件名以对PHP脚本有效的扩展名结尾(例如:.php)。
还要确保您的网络服务器(Apache等)正在加载PHP模块。
答案 1 :(得分:2)
我想我找到了它:
echo $row['poster']
缺少最后一个分号。
答案 2 :(得分:2)
如果您是Apache,请务必检查您的php.ini是否有错误报告并添加:
ini_set('display_errors', 1);
ini_set('log_errors', 1);
ini_set('error_log', dirname(__FILE__) . '/error_log.txt');
error_reporting(E_ALL);
这将使调试变得更容易!
答案 3 :(得分:2)
当我通过AS3中的相对路径请求localhost php文件时,发生了这种情况,然后我使用了完整的URL路径并且它有效。