Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Erro ao exibir os títulos

Boas Aluras...

Galera está aparecendo esse Bug no título, que parece ser um erro no código...

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Index

<?php
/* ------------------------------------ Separando os códigos PHP do HTML --------------------------------------- */
/*
É boa prática de programação manter os códigos em arquivos separados, para facilitar a edição de códigos e também
evitar possíveis erros possam danificar a aplicação.

Nesse exercício isolamos os códigos PHP dos artigos em uma classe e encapsulamos esse código em uma função,
para acessar essa classe e a função criada é necessário serguir os procedimentos a seguir: 
*/
// Fazer o link com o código feito na classe Artigos, utilixando o include.
include 'Artigo.php';

// Instanciar a classe Artigos, criando a classe e salvando ele em uma variável, nesse caso usamos $artigo
$artigo = new Artigos($mysql);
/* Referenciar a função exibirArtigos(), salvando a função dentro da variável $artigos,
que recebeu o valor da classe Artigos salvo na variável $artigo */
$artigos = $artigo->exibirArtigos();

/* ------------------------------------------------------------------------------------------------------------- */

// Instanciando a conexão, feita no arquivo conexão.php
require_once 'conexao.php';

?>

<!DOCTYPE html>
<html lang="pt-br">

<head>
    <title>Meu Blog</title>
    <meta charset="UTF-8">
    <link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>
    <div id="container">
        <h1>Meu Blog</h1>
        <?php foreach ($artigos as $artigo) : ?>
            <h2>
                <a href= "<?php echo $artigo['link'];?>">
                    <?php echo $artigo['titulo'];?>
                </a>
            </h2>
            <p>
            <?php echo $artigo['conteudo'];?>
            </p>
        <?php endforeach ?>
    </div>
</body>

</html>

Conexão

<?php

/* -------------------------------------- Trabalhando com Banco de Dados ------------------------------------------
Para conectar o projeto PHP com o banco de dados é necessário estabelecer uma conexão, fazer a referência no
projeto que tem uma conexão com um banco de dados. Essa conexão deve ser feita da seguinte forma:
*/
// 1 - Referênciar o banco de dados, salvando a conexão em uma variável, nesse caso usamos a variável $mysql
// A função mysqli() pede 4 parâmetros
// Ex. mysqli('nome do host', 'nome de usuário do banco de dados', 'senha de acesso', 'nome do banco de dados')
$mysql = new mysqli('localhost', 'root', '', 'blog');

// 2 - Determinar o charste do banco de dados, para isso iremos usar a função set_charset()
// A função set_charset pede 1 parametro
// Ex. set_charset('nome do charset que será utilizado no banco de dados')
$mysql->set_charset('utf8');


if ($mysql == false) {
    echo 'Erro de conexão';
}

/* ------------------------------------------------------------------------------------------------------------- */

Artigo

<?php

/* A finalidade desse arquivo que abriga a classe Artigos é de escrever o código PHP pe irá automatizar
a donstrução e edição de posts na pagina do blog e fazer a conexão com banco de dados
*/

include 'conexao.php';

class Artigos
{
    // Inicia a variável $mysql
    private $mysql;

    // Cria a função construtora
    public function __construct(mysqli $mysql)
    {
        $this->mysql = $mysql;
    }

    public function exibirArtigos(): array
    {
        // Realiza consulta no banco de dados
        $resultado = $this->mysql->query('SELECT id, titulo, conteudo FROM artigos');
        // O método fetch_all retorna um array associativo com valor inteiro
        $artigos = $resultado->fetch_all(MYSQLI_ASSOC);

        return $artigos;
    }
}
2 respostas
solução!

Problema resolvido no vídeo seguinte!

Valeu

Rapaz, eu fiquei com inveja dessa sua organização, parabéns!!