-4
I am developing a PHP API, which is hosted on Hostinger. However, when I do the SQL query on Mysqli, I get the same error no matter what changes I make to the code:
Warning: mysqli_query() expects Parameter 1 to be mysqli, null Given android_connect/get_all_products.php on line 20
When I change all the code to Mysql, it informs that Mysql is already old and asks me to do it in Mysqli.
Is there a solution to this error? Without it, and you can help, I thank you.
db_connect.php
<?php
/**
* Uma classe de conexão ao banco.
*/
class DB_CONNECT {
// Construtores
function __construct() {
// Realiza a conexão.
$this->connect();
}
// Desconstrutor.
function __destruct() {
// Encerra a conexão.
$this->close();
}
/**
* Função para conectar-se ao banco.
*/
function connect() {
//Importa as variaveis da conexão.
require_once __DIR__ . '/db_config.php';
// Conecta ao banco com as informações importadas.
$con = mysqli_connect(DB_SERVER, DB_USER, DB_PASSWORD)or die(mysqli_error());
// Seleciona o banco.
$db = mysqli_select_db($con, DB_DATABASE) or die(mysqli_error());
// Retorna os cursores.
return $con;
}
/**
* Função que encerra a conexão,
*/
function close() {
// Fecha a conexao.
mysql_close();
}
}
?>
get_all_product.php
<?php
/*
* Lista todos os itens que estão no banco.
*/
// Array para resposta do JSON
$response = array();
// Inclui as classes de conexão.
require_once __DIR__ . '/db_connect.php';
// Conecta-se ao banco.
$db = new DB_CONNECT();
// Pega os produtos da tabela AN_CAR
$result = "SELECT * FROM all_car";
$query = mysqli_query($con) or die (mysqli_error($con));
// Checa se há campos vazios
if (mysql_num_rows($result) > 0) {
// Se há campos preenchidos no banco, loopa todos os resultados e puxa.
$response["an_car"] = array();
while ($row = mysql_fetch_array($result)) {
// Array de todos os itens.
$product = array();
$product["id"] = $row["id"];
$product["modelo"] = $row["modelo"];
$product["marca"] = $row["marca"];
$product["ano"] = $row["ano"];
$product["motor"] = $row["motor"];
$product["imagem"] = $row["imagem"];
$product["preço"] = $row["preço"];
array_push($response["all_car"], $product);
}
// Busca bem sucedida.
$response["success"] = 1;
// Mostra os resultados em JSON.
echo json_encode($response);
} else {
// Caso não encontre nada:
$response["success"] = 0;
$response["message"] = "Não há itens.";
// echo no users JSON
echo json_encode($response);
}
?>
Possible duplicate of: Error in select using mysqli_query
– rray