PHP Parse错误:语法错误,意外T_CLASS

时间:2010-12-29 10:46:59

标签: php html mysql

我是PHP的新手,我正在创建一个论坛。所有文件都可以工作,除了一个文件add_topic.php。

它给我一个错误说:

  

解析错误:语法错误,第25行/home/a3885465/public_html/add_topic.php中的意外T_CLASS

我知道这可能就行了:

}
else{
    echo "ERROR";
}
mysql_close();

但整个代码以下是以防万一。

如果您有任何想法,我们将非常感谢,谢谢!


add_topic.php的代码

$host=""host"";
$username="username";
$password="password";
$db_name ="database_name";
$tbl_name="forum_question";// Table name

// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

// get data that sent from form
$topic=  $_POST['topic'];
$detail= $_POST['detail'];
$name=   $_POST['name'];
$email=  $_POST['email'];

$datetime=date("d/m/y h:i:s");//create date time

$sql="INSERT INTO $tbl_name(topic, detail, name, email, datetime)VALUES('$topic',
    '$detail', '$name', '$email', '$datetime')";
$result=mysql_query($sql);

if($result){
    echo "Successful<BR>";
    echo "<a href=main_forum.php>View your topic</a>";
else{
    echo "ERROR";
}
mysql_close();
?>

3 个答案:

答案 0 :(得分:3)

加: 你“双引号主持人。

$host=""host""; // Host name

替换为

$host="host"; // Host name

但是说真的:你应该给自己一个体面的IDE!

答案 1 :(得分:1)

第25行你有一个未转义的<?php

<p class="p1"><span class="s1"></span><?php<span class="s2"><br>

应该是:

<p class="p1"><span class="s1"></span>&lt;?php<span class="s2"><br>

答案 2 :(得分:1)

三年后,我来了:

您的解析器可能会抱怨第一行""host""周围的四重引号。还

echo "<a href=main_forum.php>View your topic</a>";

应该是

echo "<a href=\"main_forum.php\">View your topic</a>";

最后,代码充满了SQL注入的机会。在将输入放入查询之前屏蔽输入。有很多聪明的技巧可以做到这一点,比如mysql_real_escape_string和大量关于这个主题的博客文章。

我个人发现在输入上使用base64,并且只要你不介意额外的空间,每当我需要处理它时解码它效果最好。