嗨期待T_FUNCTION希望你能幫助我..PHP的解析錯誤:語法錯誤,意想不到的T_STRING,在構建
只是爲了讓你知道提前,我是一個相對較新的PHP編碼器,做練習項目,並遇到了這個問題,我花了一個小時的複查和谷歌搜索,但只是不知道是什麼造成它
錯誤:解析錯誤:語法錯誤,意外的T_STRING,期待T_FUNCTION在C:\ wamp \ www \ forum \ classes \ ClassUser.php on line 7
導致問題的代碼段:
include $_SERVER["DOCUMENT_ROOT"]."forum/classes/general.inc";
Class User{
__construct($u,$p){ //this is line 7
$user=$u;
if(strlen($p)>30|| empty($p) || !preg_match('/[^a-zA-Z0-9]/i',$p)){
$password=0;
}
else{
$password=hash_hmac('md5',$p,KEY);
}
}
哦,因爲即時通訊新的PHP,如果我做了一些我不應該,請推薦..提前感謝。
注:香港專業教育學院刪除PHP標籤,因爲它們似乎與這個帖子的格式搞亂:/
注2:IM也越來越另一個通知 注意:使用未定義的常量KEY的 - 假設「KEY」的C:\ WAMP \ WWW \論壇\類\ general.inc上線20
,但即時通訊假設一個多錯誤警告的多數民衆贊成...但只是增加櫃面它是與錯誤
general.inc:
//error definations
define("ERROR_FIELD_EMPTY","Error! All required fields not filled");
define("ERROR_INVALID_SIGNIN","Error! Username/password do not match!");
define("ERROR_GENERAL_INPUT", "Error! Invalid input given");
define("ERROR_SQL_CONNECT","Error! Could not connect to sql database");
//field sizes
define("PASSWORD_LENGTH",12);
define("USERNAME_LENGTH",30);
//sql server details
define("SQL_SERVER_NAME","localhost");
define("SQL_SERVER_USERNAME","root");
define("SQL_SERVER_PASSWORD","");
define("SQL_SERVER_DATABASE","forums");
define(KEY,"key");
function __autoload($className){
require_once($_SERVER["DOCUMENT_ROOT"]."forum/classes/Class$className.php");
}
ClassUser.php
include $_SERVER["DOCUMENT_ROOT"]."forum/classes/general.inc";
Class User{
__construct($u,$p){
$user=$u;
if(strlen($p)>30|| empty($p) || !preg_match('/[^a-zA-Z0-9]/i',$p)){
$password=0;
}
else{
$password=hash_hmac('md5',$p,KEY);
}
}
public function validate(){
if(strlen($user)>30|| empty($user) || preg_match('/[^a-zA-Z0-9]/i',$password==0)){
throw new Exception(ERROR_GENERAL_INPUT);
}
$user=mysql_real_escape_string($user);
return true;
}
public function insert(){
// this->validate();
$conn= mysqli_connect(SQL_SERVER_NAME,SQL_SERVER_USERNAME,SQL_SERVER_PASSWORD,SQL_SERVER_DATABASE);
if(empty($conn)){
throw new Exception(ERROR_SQL_CONNECT);
}
$query="INSERT into USERS VALUES ($user,$password)";
$conn->query($query);
}
private $user;
private $password;
};
NewUser.php
include $_SERVER["DOCUMENT_ROOT"]."forum/classes/general.inc";
try{
$user = new User($_POST['UserName'],$_POST['Password']);
$user->insert();
}
catch(Exception $Error){
echo $Error->getMessage();
}
參見手冊上的構造函數:http://www.php.net/manual/en/language.oop5.decon.php – mario