Я просто изучаю классы, я пытаюсь добавить данные с помощью параметров mysql bind, но не могу это сделать, кажется, какая-то глупая ошибка, пожалуйста, помогите мне с, я хочу делайте это с oops способом, иначе я могу это сделать.Mysql Bind insert with classes: невозможно вставить с oops
Ошибка: Ошибка синтаксического анализа: синтаксическая ошибка, неожиданный '$ Mysqli' (T_VARIABLE), ожидая функции (T_FUNCTION) в customer.php на линии 4
Index.php
$adduser= new Userclass();
echo $adduser->addcutomer();
Db class.php
class db extends mysqli {
private static $instance = null;
private $user = "root";
private $pass = "xxx";
private $dbName = "xxx";
private $dbHost = "localhost";
public static function getInstance() {
if (!self::$instance instanceof self) {
self::$instance = new self;
}
return self::$instance;
}
public function __clone() {
trigger_error('Clone is not allowed.', E_USER_ERROR);
}
public function __wakeup() {
trigger_error('Deserializing is not allowed.', E_USER_ERROR);
}
private function __construct() {
parent::__construct($this->dbHost, $this->user, $this->pass, $this->dbName);
if (mysqli_connect_error()) {
exit('Connect Error (' . mysqli_connect_errno() . ') '
. mysqli_connect_error());
}
parent::set_charset('utf-8');
}
public function dbquery($query)
{
if($this->query($query))
{
return true;
}
}
}
клиентов класса
class Userclass extends db{
$mysqli=db::getInstance();
public function addcutomer(){
$query = $mysqli->prepare("INSERT INTO `user` (`firstname`,`lastname`) VALUES (?, ?)");
$col1 = 'abc';
$col2 = 'def';
$query->bind_param('ss', $col1, $col2);
$query->execute();
$query->close();
return true;
}
проход $ col1 = абв; $ col2 = def; это в строке, как $ col1 = 'abc'; $ col2 = 'def'; –
Вам нужно проверить руководство по настройке и доступу к свойствам объекта. Также обратите внимание, что очень маловероятно, что вы хотите, чтобы все ваши классы расширяли 'mysqli'. Вместо этого вы должны взглянуть на инъекцию зависимостей. – jeroen
@jeroen, пожалуйста, помогите мне с приведенным выше кодом, кажется, что некоторые настройки необходимы в db.php или customerclass.php – gaurav