Этот вопрос закрыт для ответов, так как повторяет вопрос Ошибка в коде, в чем проблема?
@Sandro_s

Как изменить запрос с msql на msqli в php7?

CMS написана на php5
Сейчас стоит PHP-7*64
Apache -PHP-7 64
MySQL 5.5*64

Пробую переписать запросы из msql в msqli, но не везде срабатывает, выдаёт ошибки:

Warning: mysqli_query() expects at least 2 parameters, 1 given in D:\sites\mysite.local\www\rus\oop\cms\classes\Database.php on line 32

стр. 32 $res = mysqli_query($sql);

таже самая ошибка и для функции public function get_one_db

Код полностью:

<?php

class Database {
	private $db;
	
	public function __construct($host,$user,$pass,$db) {
		//$this->db = mysql_connect($host,$user,$pass);
		
		/*$this->db = mysqli_connect(‘host’, $user, $pass, $db)
		
		 or die('Ошибка соединения с БД');*/

		$this->db = @mysqli_connect('localhost', 'root', '', 'my_bd') or die('Ошибка соединения с БД');

		/*if(!$this->db) {
			exit('No connection with database');
		}
		if(!mysql_select_db($db,$this->db)) {
			exit('No table');
		}*/
		
		//mysql_query("SET NAMES cp1251");
	//	mysqli_query($link, ‘set names cp1251’)
		/*mysqli_set_charset($db, "utf8") or die('Не установлена кодировка');*/
		
		return $this->db;
	}
	
	public function get_all_db() {
		$sql = "SELECT id,title,discription FROM statti LIMIT 10";
		
		$res = mysqli_query($sql);
		
		if(!$res) {
			return FALSE;
		}
		for ($i = 0;$i < mysqli_num_rows($res); $i++) {
			$row[] = mysqli_fetch_array($res,MYSQL_ASSOC);
		}
		
		return $row;
	}
	
	public function get_one_db($id) {
	
		/*$sql = "SELECT id,title,text FROM statti WHERE id='$id'";*/

		$sql = "SELECT id,title,text FROM statti WHERE id=?";
		$res = mysqli_query($sql);
		
		if(!$res) {
			return FALSE;
		}
		$row = mysql_fetch_array($res,MYSQL_ASSOC);
		
		return $row;
	}
}

?>
  • Вопрос задан
  • 289 просмотров
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Ещё один человек, который учится писать, не научившись читать?
mysqli_query()
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы