这个“for dummies”PHP代码有什么问题?

时间:2010-08-04 18:03:26

标签: php

我在一个免费的网络服务器上运行PHP5,我正在尝试学习PHP阅读“for dummies”一书...它给了我一些代码来运行,并且由于一些令人愤怒的原因我在每一行上都出现错误回声HTML

这是代码。细节已被删除,但它们是准确的:

<?php
/* Program: mysql_up.php
* Desc: Connects to MySQL Server and
* outputs settings.
*/
echo “<html>
<head><title>Test MySQL</title></head>
<body>”;
$host=”XXXX”;
$user=”XXXX”;
$password=”XXXX”;
$cxn = mysqli_connect($host,$user,$password);
$sql=”SHOW STATUS”;
$result = mysqli_query($cxn,$sql);
if($result == false)
{
echo “<h4>Error: “.mysqli_error($cxn).”</h4>”;
}
else
{
/* Table that displays the results */
echo “<table border=’1’>
<tr><th>Variable_name</th>
<th>Value</th></tr>”;
for($i = 0; $i < mysqli_num_rows($result); $i++)
{
echo “<tr>”;
$row_array = mysqli_fetch_row($result);
for($j = 0;$j < mysqli_num_fields($result);$j++)
{
echo “<td>”.$row_array[$j].”</td>\n”;
}
}
echo “</table>”;
}
?>
</body></html>

每当它到达一条回显HTML的行时我就会收到此错误或类似错误:

解析错误:语法错误,意外'&gt;'在第6行的/home/a7613610/public_html/mysql_up.php

我想学习PHP,但是当它报告错误的代码时,它让我不想这样做。

5 个答案:

答案 0 :(得分:13)

代码中充满了花哨的引号(),PHP无法应对。您可以使用文本编辑器使用通用双引号字符"对两个字符进行查找和替换。 尽管使用纯文本编辑器(参见Mike Caron's answer)看起来确实是 ,但我希望您使用的是纯文本编辑器。文字处理和富文本编辑软件不是为编写程序和脚本而设计的。

好的,所以你使用记事本编写PHP代码。这很好,但请注意,一些电子书阅读器甚至一些书本身都会在代码块中混淆引号字符并使它们看起来很奇特。这就是为什么复制和粘贴代码不赞成的一个原因;)

另外,如果您想学习PHP或任何形式的编程,您可能不应该期望书籍和教程是完美的;)

答案 1 :(得分:6)

永远不要使用MICROSOFT WORD开发任何类型的东西!

我为喊叫而道歉,但这非常重要。使用记事本,或使用任何其他文本编辑器。但是,永远不要使用Word或任何文字处理器进行编码!

答案 2 :(得分:2)

报价错了。使用正常的引号,例如“而不是你复制的那些(”)!

答案 3 :(得分:0)

您的问题已得到解答,但由于您是PHP的新手(显然是在编程中),我想补充一下,关于Mike Caron的答案,您应该避免在Windows记事本中进行编码。

我曾经遇到过一个主要的空白问题,因为我在Windows记事本中编辑了一个PHP文件(我花了大约2个小时才搞清楚)。

Notepad++,对于初学者来说是必须的。

答案 4 :(得分:-1)

除了其他人指出的,这些行

echo “<table border=’1’>
<tr><th>Variable_name</th>
<th>Value</th></tr>”;

应该只是一行

echo "<table border=’1’><tr><th>Variable_name</th><th>Value</th></tr>";

马塞洛。