[SUPORTE] SELECT no Banco de Dados

+3
lThiago
Rafacasari
T0E
7 participantes

T0E T0E  • 10.10.17 13:13

[SUPORTE] SELECT no Banco de Dados Empty [SUPORTE] SELECT no Banco de Dados 10.10.17 13:13

Olá, estou meio que programando um FS e estou querendo dar um SELECT nas notícias.

Estou utilizando o seguinte código:

Código:
<?php
$noticia = mysql_query( "SELECT * FROM noticias ORDER BY data");
?>

Porém quando utilizo <?php echo $noticia['titulo']; ?> a parte onde deveria aparecer o título fica em branco.

Alguém sabe onde está o erro e o que eu posso fazer? Obrigado.

Rafacasari Rafacasari  • 10.10.17 13:33

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 13:33

Isso acontece por que não está usando o fetch, tente usar:
Código:
$row = mysql_fetch_assoc($noticia)
echo $row['titulo'];

mas como você vai buscar todas notícias e não uma especifica usa o while para retornar todos os valores:
Código:
while ($row = mysql_fetch_assoc($result)) {
    echo $row['titulo'];
    echo $row['conteudo'];
}

T0E T0E  • 10.10.17 13:45

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 13:45

O Código ficaria assim?

Código:
<?php
$noticia = mysql_query( "SELECT * FROM noticias ORDER BY data");
while ($row = mysql_fetch_assoc($noticia)) {
    echo $row['titulo'];
    echo $row['descricao'];
}
?>

Se for não deu muito certo, pois apareceu esse erro:

Código:
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:\Xampp\htdocs\icehabbo\index.php on line 256

Linha 256:

Código:
while ($row = mysql_fetch_assoc($noticia)) {

Rafacasari Rafacasari  • 10.10.17 14:25

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 14:25

Estranho, pode ser esse espaço no mysql_query(
Tente dar uma olhada nesse código: [Tens de ter uma conta e sessão iniciada para poderes visualizar este link]

lThiago lThiago  • 10.10.17 14:34

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 14:34

Tente assim, ai so você edita.

Código:
<?php
$thiago = mysql_query("SELECT * FROM noticias ORDER BY id DESC LIMIT 5");
$i = 0; while($newsobject = mysql_fetch_assoc($thiago)){ $i  ;

$ii=$i-1;
if($i==1){
 ?>

<?php echo $newsobject['titulo']; ?>

<?php } ?>
<?php } ?>

T0E T0E  • 10.10.17 14:37

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 14:37

Acontece o mesmo erro...

lThiago lThiago  • 10.10.17 14:51

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 14:51

Veja esse:
Código:

<?php
$thiago = mysql_query("SELECT * FROM noticias ORDER BY id DESC LIMIT 5");
while($thiagolindo = mysql_fetch_array($thiago)){
?>

<?php echo $thiagolindo['titulo']; ?>

<?php } ?>

T0E T0E  • 10.10.17 14:59

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 14:59

Mesma coisa, só mudou o nome do erro.

Código:
mysql_num_rows() expects parameter 1 to be resource, boolean given in

lThiago lThiago  • 10.10.17 15:05

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 15:05

Tenta assim: Ele vai mostra o erro
Código:

<?php
$thiago = mysql_query("SELECT * FROM noticias ORDER BY id DESC LIMIT 5") or die ("".mysql_error());
while($thiagolindo = mysql_fetch_array($thiago)){
?>

<?php echo $thiagolindo['titulo']; ?>

<?php } ?>

Rafacasari Rafacasari  • 10.10.17 15:14

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 15:14

O erro pode ser na query então

avatar Gomez  • 10.10.17 15:20

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 15:20

PHP 5.3

Código:

$get_news = mysql_query("SELECT * FROM noticias ORDER BY data") or die(mysql_error());
while($row = mysql_fetch_assoc($get_news)){

<?php echo $row['titulo']; ?>

<?php } ?>

T0E T0E  • 10.10.17 17:20

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 17:20

Mostrando o erro fala que não tem nenhuma DB selecionada..

lThiago lThiago  • 10.10.17 17:28

[SUPORTE] SELECT no Banco de Dados Empty Arrumando o erro! 10.10.17 17:28

T0E escreveu:Mostrando o erro fala que não tem nenhuma DB selecionada..
Ai esta o erro, não ta conseguindo faze conexão com o banco de dados, veja seu sistema de conexão com o banco de dados.

T0E T0E  • 10.10.17 17:29

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 17:29

Meu sistema de conexão está no header.php assim:

Código:
$link = mysqli_connect("localhost", "root", "", "icehb");

if (!$link) {
  echo "Error: Falha ao conectar-se com o banco de dados MySQL." . PHP_EOL;
  echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
  echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
  exit;
}

mysqli_close($link);

xNectar xNectar  • 10.10.17 19:25

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 19:25

Você fez uma conexão com MYSQLI e está usando MYSQL para fazer esse select.
O certo seria:

Código:

$get_news = mysqli_query($link, "SELECT * FROM noticias ORDER BY data") or die(mysql_error());
while($row = mysqli_fetch_assoc($get_news)){

<?php echo $row['titulo']; ?>

<?php } ?>

Gasparzinho Gasparzinho  • 10.10.17 21:51

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 21:51

Moderação

O autor do tópico possui 24 horas para informar se a questão foi resolvida!

T0E T0E  • 10.10.17 22:07

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 10.10.17 22:07

Usando o código do xNectar aparece outro erro:

Código:

Warning: mysqli_query(): Couldn't fetch mysqli

xNectar xNectar  • 11.10.17 10:48

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 11.10.17 10:48

T0E escreveu:Meu sistema de conexão está no header.php assim:

Código:
$link = mysqli_connect("localhost", "root", "", "icehb");

if (!$link) {
   echo "Error: Falha ao conectar-se com o banco de dados MySQL." . PHP_EOL;
   echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
   echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
   exit;
}

mysqli_close($link);

Remova o mysqli_close($link);
e tente novamente:

Código:
$link = mysqli_connect("localhost", "root", "", "icehb");

if (!$link) {
   echo "Error: Falha ao conectar-se com o banco de dados MySQL." . PHP_EOL;
   echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
   echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
   exit;
}

T0E T0E  • 11.10.17 11:59

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 11.10.17 11:59

Reputação da mensagem: 100% (1 votos)
Olá esse problema foi resolvido. Mas como eu vou mostrar várias notícias, eu deveria determinar cada ID para cada notícia... não?
Por exemplo, aqui quando eu coloco o código pra outra notícia, aparece a mesma da anterior. Eu deveria determinar IDs para cada notícia, como eu poderia fazer isso?

xNectar xNectar  • 11.10.17 12:10

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 11.10.17 12:10

Tente usar este código:

Código:

$get_news = mysqli_query($link, "SELECT * FROM noticias ORDER BY data DESC") or die(mysql_error());
while($row = mysqli_fetch_assoc($get_news)){

<?php echo $row['titulo']; ?>

<?php } ?>

T0E T0E  • 11.10.17 22:17

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 11.10.17 22:17

Problema resolvido Obrigado!

b3ta b3ta  • 11.10.17 22:29

[SUPORTE] SELECT no Banco de Dados Empty Re: [SUPORTE] SELECT no Banco de Dados 11.10.17 22:29

[sucesso=MODERAÇÃO] Tópico fechado e movido, questão resolvida.[/sucesso]
Permissões neste sub-fórum
Não podes responder a tópicos

BH Servers

Recomendamos a BH Servers com proteção DDOS gratuita em Cloud Server de alta performance. Entrega imediata.