Dúvida simples com uma query em php

29/03/2019

7

Prezados devs, boa tarde à todos.
Estou com um pequeno problema em uma sistema que eu estou criando. Eu tenho um função que recebe um parâmetro, esse parâmetro é usado para fazer uma consulta em um banco de dados, porém não está retornando valor nenhum. Quando testo a mesma lógica fora de uma função, funciona na boa. Segue aí o código.

Arquivo de conexão com o banco
(conn.php)
<?php
$conn = mysqli_connect('localhost','root', '') or die("Erro de conexão");
$db = mysqli_select_db($conn,'presslike') or die ("Erro ao selecionar o banco de dados");
?>

Arquivo com as funções
(functions.php)
<?php
#Conexão com o banco
include 'conn.php';

#A abençoada da função!
function get_article_id($url){
$query = mysqli_query($conn, "SELECT article_id FROM press_article WHERE article_url= '$url' ");
if ($result = mysqli_fetch_assoc($query)) {
echo $result['article_id'];
}
}
?>

(index.php)
<?php
#Chamando as funções
include 'functions.php';
#Pegando a url dinâmicamente, no caso, a variável que iriei usar.
$url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
?>
<?php
#Chamando a função e passando a variavel como parâmetro.
get_article_id($url);
?>

Como falei acima, eu testei a lógica da função fora dela, e me retornou de boas. Só que quero que fique em um arquivo de função. Quem poder me ajudar eu agradeço, to empacado nisso. Já usei função antes, mas isso nunca foi um problema, não estou conseguindo entender o que está havendo!
Responder

Posts

Prezados devs, boa tarde à todos.
Estou com um pequeno problema em uma sistema que eu estou criando. Eu tenho um função que recebe um parâmetro, esse parâmetro é usado para fazer uma consulta em um banco de dados, porém não está retornando valor nenhum. Quando testo a mesma lógica fora de uma função, funciona na boa. Segue aí o código.

Arquivo de conexão com o banco
(conn.php)
<?php
$conn = mysqli_connect('localhost','root', '') or die("Erro de conexão");
$db = mysqli_select_db($conn,'presslike') or die ("Erro ao selecionar o banco de dados");
?>

Arquivo com as funções
(functions.php)
<?php
#Conexão com o banco
include 'conn.php';

#A abençoada da função!
function get_article_id($url){
$query = mysqli_query($conn, "SELECT article_id FROM press_article WHERE article_url= '$url' ");
if ($result = mysqli_fetch_assoc($query)) {
echo $result['article_id'];
}
}
?>

(index.php)
<?php
#Chamando as funções
include 'functions.php';
#Pegando a url dinâmicamente, no caso, a variável que iriei usar.
$url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
?>
<?php
#Chamando a função e passando a variavel como parâmetro.
get_article_id($url);
?>

Como falei acima, eu testei a lógica da função fora dela, e me retornou de boas. Só que quero que fique em um arquivo de função. Quem poder me ajudar eu agradeço, to empacado nisso. Já usei função antes, mas isso nunca foi um problema, não estou conseguindo entender o que está havendo!

Galera, eu acabei encontrando a solução. Eu estava usando uma conexão na função, porém não estava passando a mesma como parâmetro. Falta de atenção minha rs, valeu!
Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira