今天 在开发时碰到了关于Parse error: syntax error, unexpected $end 错误 提示,根据自己 的要验这里可能是 if else未成对出现,下面我们来总结一下问题和解决办法。
也许是不熟悉的php的一些特性吧,不过写多了,也就慢慢适应将就了.....
这里就整理一个代码编写调试问题,错误如下:
Parse error: syntax error, unexpected $end in D:xampphtdocsguestBookguestBook.php on line 330
看看程序 330行,代码最后一行,这有什么错误?google搜,找到了:
In PHP 5, the following error may appears as an error entry in Apache error log or simply displays on PHP web page, even if calling to php scripts with php_info() works perfectly and successfully returns information on PHP configurations:
Parse Error: syntax error, unexpected $end in ….. scripts.php on line …
The error may caused by a missing curly bracket in PHP script coding. Beside, it may also caused by error in PHP coding in class definition, as in PHP, a class definition cannot be broke up and distributed into multiple files, or into multiple PHP blocks, unless the break is within a method declaration.
But more commonly, the error is often caused by the use of Short Open tags in PHP,
To use short open tags, it must be enabled in PHP.INI. Search for short_open_tag in PHP.INI, and change the value to On. The line should look line:
short_open_tag = On
欺我英文不好啊?看看其它几条搜索,都没说到点子上,那就看看英文了,虽不能如数翻译,大致意思是瞧明白了:
错误发生是使用了短标签,可以在php.ini中设置short_open_tag = On
原来Parse error 提示一般是 语法错误,使用了开放的标签,语句没有结束 也就是编程基本的一些错, 比如没注意 语句结束加 ";" 或者 if(){...} 后面忘了"}" ;忘了"?>"。仔细检查代码,果然是一处漏掉了"}",修改程序正常运行
实例
conn.php
/*
* bkJiaJob v1.0
* Programmer : Msn/QQ haowubai@hotmail.com (925939)
* www.php100.com Develop a project PHP - MySQL - Apache
* Window 2003 - Preferences - PHPeclipse - PHP - Code Templates
*/
$conn = @ mysql_connect("localhost", "root", "dong") or die("数据库链接错误");
mysql_select_db("news", $conn);
mysql_query("set names 'GBK'"); //使用GBK中文编码;
function htmtocode($content) {
$content = str_replace("n", "
", str_replace(" ", " ", $content));
return $content;
}
//$content=str_replace("'","‘",$content);
//htmlspecialchars();
?>
/*
* bkJiaJob v1.0
* Programmer : Msn/QQ haowubai@hotmail.com (925939)
* www.php100.com Develop a project PHP - MySQL - Apache
* Window 2003 - Preferences - PHPeclipse - PHP - Code Templates
*/
include("conn.php");
include("head.php");
$SQL="SELECT * FROM `message` order by id desc";
$query=mysql_query($SQL);
while($row=mysql_fetch_array($query)){
?>
标题:=$row[title]?> 用户:=$row[user]?> |
内容: echo htmtocode($row[content]); ?> |
报错的原因在这里
}
?>
改成
}
?>
解决 办法
你把标题、内容,用户那三个改成这样的就行了啊。函数就
这不是主要的,至多只是显示不出数据
报错的原因在这里
}
?>
改成
}
?>