Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia.
To me complicando aqui, preciso desenvolver um portal de noticias. Só que vou ter que criar uma pagina para armazena todas as funções. Como costumo fazer as sql direto na pagina, não tenho prática com funções. Vamos lá:
Tenho o arquivo noticia.php e funcoes.php.
No noticia.php
<? include('funcoes.php');
...
$cod = $_GET['not'];
SQLnoticias($cod);
?>
E no funcoes.php
**<? function SQLnoticias($cod){**
** $query = "SELECT * FROM noticias WHERE codigo = $cod";**
$result = mysql_query($query) or die(mysql_error());
$noticia = mysql_fetch_array($result);
** return $noticia; (<-acho que o erro ta aqui)**
**?>**
Então no noticia eu chamo a função e envio o $cod.
A função recebe resolve a sql.
O problema ta aqui como que eu retorno esse array e depois mostro cada um dos dados do array deles no noticia.php (titulo, txt etc).
Obrigado
alterei a função:
function SQLnoticias($cod){
$push = array();
** $query = "SELECT * FROM noticias WHERE codigo = $cod";**
$result = mysql_query($query) or die(mysql_error());
while($noticia = mysql_fetch_array($result, MYSQL_NUM))
{
$noticia = array_map('stripslashes', $noticia);
$push[] = $noticia;
//print_r($push); <- faço isso pra conferir e o array ta ok
}
return $push;}
Mas agora não to conseguindo usar essa dados na noticia.php.
Tentei só dar o mesmo print_r($push); e da o erro
Notice: Undefined variable: push in....
O rolo é agora, como que recebo esse return no noticia.php e printo cada dados da tabela separado, só o titulo por exemplo.
$teste = SQLnoticias('123');
echo $teste['0']['nomeDoCampo'];Alterações:
No noticia ficou:
$not = SQLnoticias($cod);
echo $not['5']['titulo'];
Erro que aparece: Notice: Undefined offset: 5
tenta echo $not[5]['titulo']; sem as aspas e dê um var_dump ou print_r em $not
Cassio, se você não se der ao trabalho de ler e entender o script, não há pessoa que te ajude, porque cargas d'água você usou o índice 5? Você sabe de onde eu tirei o índice zero no exemplo que passei? Dê um print_r e veja qual a estrutura do array para entender o que você precisa fazer.
Cassio, se você não se der ao trabalho de ler e entender o script, não há pessoa que te ajude, porque cargas d'água você usou o índice 5? Você sabe de onde eu tirei o índice zero no exemplo que passei? Dê um print_r e veja qual a estrutura do array para entender o que você precisa fazer.
Tirei o indice 5 pq eu perguntei como imprime uma varaivel. Print_r no $not, na pagina de noticia. Mostra meu array completo. "Array ([0] => Array ( [0] => 354463 [1] => 2015-06-02 16:35:00 [2] => [3] => T�NIS [4] => 0 [5] => Tsong......"
echo $teste['0']['nomeDoCampo']; Esse 0 não era pra ser o primeiro campo do array?
Por isso coloquei o 5.Que ´onde esta o titulo que eu queria imprimir.
Eu to lendo to tentando entender, senão não tava aqui perguntando. Desculpa.
tenta echo $not[5]['titulo']; sem as aspas e dê um var_dump ou print_r em $not
sem aspas não vai.
print_r e var_dump imprime o array inteiro do $not.
O noticia.php ta recebendo os valores pelo menos. A impressão de cada campo da tabela que nao ta saindo.
pronto resolvi.
array = $push;
echo $push['0']**['5']**; (imprime o titulo)
Tava colocando o nome do campo da tabela no echo, ao invés da posição do array
http://stackoverflow.com/questions/1553279/php-function-to-return-sql-results-that-contain-arrays-as-an-array