Ошибки при установке ocstore или opencart
Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\OpenServer\domains\ocstore\system\database\mysql.php on line 6
Warning: Cannot modify header information - headers already sent by (output started at C:\OpenServer\domains\ocstore\system\database\mysql.php:6) in C:\OpenServer\domains\ocstore\system\engine\controller.php on line 28
Warning: Cannot modify header information - headers already sent by (output started at C:\OpenServer\domains\ocstore\system\database\mysql.php:6) in C:\OpenServer\domains\ocstore\system\engine\controller.php on line 29
Решение:
Просто стоит старый обработчик и его хрен заменить просто так, но в целом очень просто:
1) идем сюда C:\OpenServer\domains\ocstore\system\database\mysql.php
2) хотите сделайте его бекап
3) и потом замените на это:
<?php
final class MySQL {
private $link;
public function __construct($hostname, $username, $password, $database) {
$this->link = new mysqli($hostname, $username, $password, $database);
if ($this->link->connect_error) {
trigger_error('Error: Could not make a database link (' . $this->link->connect_errno . ') ' . $this->link->connect_error);
}
$this->link->set_charset("utf8");
$this->link->query("SET SESSION sql_mode = 'NO_ENGINE_SUBSTITUTION'");
}
public function query($sql) {
$query = $this->link->query($sql);
if (!$this->link->errno) {
if ($query instanceof mysqli_result) {
$data = array();
while ($row = $query->fetch_assoc()) {
$data[] = $row;
}
$result = new stdClass();
$result->row = isset($data[0]) ? $data[0] : array();
$result->rows = $data;
$result->num_rows = $query->num_rows;
$query->close();
return $result;
} else {
return true;
}
} else {
trigger_error('Error: ' . $this->link->error . '<br />Error No: ' . $this->link->errno . '<br />' . $sql);
}
}
public function escape($value) {
return $this->link->real_escape_string($value);
}
public function countAffected() {
return $this->link->affected_rows;
}
public function getLastId() {
return $this->link->insert_id;
}
public function __destruct() {
$this->link->close();
}
}
?>
и все)