我试图用php编写这个简单的类,如下所示:
<?php
session_start();
require 'db_con.php';
class logg{
private $db;
private $username = $_POST['usr_name'];
private $password = $_POST['usr_pass'];
private $query = "SELECT * FROM user WHERE nick='$username'";
function __construct(){
$this->db = new DB();
}
function loggIn(){
try{
$res = $this->db->fetch($query)
foreach($res as $row) {
$dbusername = $row['nick'];
$dbpassword = $row['pass']; }
if ($username == $dbusername && $password == $dbpassword) {
$_SESSION['username'] = $dbusername;
header('Location: index.php');
} catch (Exception $e){
echo'Wrong login information!'
}
}
}
function loggOut(){
session_destroy();
}
}
?>
但我一直收到以下错误:
解析错误:语法错误,意外的'$ _POST'(T_VARIABLE),我只是想不出原因!即使我删除了这些行:
private $username = $_POST['usr_name'];
private $password = $_POST['usr_pass'];
我反而得到以下错误:
( ! ) Parse error: syntax error, unexpected '"' in
我肯定该错误是一个真正简单的错误,但我似乎无法弄清楚..!
任何帮助!
最佳答案
除了echo
行上的语法错误外,导致此特定错误的实际问题是,您只能使用常量初始化类成员。
由于常量绝不会以$
开头,因此您的初始化会出现语法错误。
,就像在$db
中一样,您必须将其分配给类的构造函数中的成员,而不是。
关于php - 解析错误: syntax error, unexpected '$_POST' (T_VARIABLE) error and i just cant understand why?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21841603/