Problemas com caracteres especiais á, ç, à, etc com php/mysql

09/10/2021

0

Prezados,
Por favor, não sei o que vem acontecendo.
Meu phpMyAdmin 5.0.2 vem mostrando esse tipo de caracteres após entrar com dados de um formulário em PHO 7.4.9, como por exemplo:
campo: "nome"
Resultado:
São Vitor

Em Agrupamento (Collation) do phpMyAdmin indico: utf8mb4_unicode_ci

Código de conexão:
config.php

<?php
//-------------------------------------------------------------
// PHP Data Objects (Objetos de Dados do PHP, em tradução livre)
// PDO é Orientado a Objetos
//-------------------------------------------------------------
// ============================================================
// config.php salvo em C:\wamp64\www\phpoo\classes\config.php
//=============================================================
define(''''''''HOST'''''''', ''''''''localhost'''''''');
define(''''''''USER'''''''', ''''''''root'''''''');
define(''''''''PASS'''''''', '''''''''''''''');
define(''''''''BASE'''''''', ''''''''phpoo'''''''');


$conn = new PDO(''''''''mysql:host='''''''' . HOST . '''''''';dbname='''''''' . BASE . '''''''';'''''''', USER, PASS);


Página: Index.php
<?php
    function __autoload($class) {
        require_once  ''''''''../classes/'''''''' . $class . ''''''''.php'''''''';
    }
?>

<!DOCTYPE html>
<html lang="pt-br">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">

        <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
        <title>phpOO - Orientado a Objeto</title>

        <!-- Bootstrap -->
        <link href="../css/bootstrap.min.css" rel="stylesheet">
        
        <script>
            var ch = ''''''''<?php echo sha1(time()); ?>'''''''';
        </script>
    </head>
    <body>

        <div class="container">

            <header>
                <img src="imagens/logo.png"/>
                <div class="well">
                    <h1 class="text-center">PhpOO Crud - Orientado a Objeto -> <span class="text-primary">ComercioCursos.com.br</span></h1>
                </div>
            </header>

            <!-- Form cadastrar -->
            <div style="margin: 100px 0; text-align: center">
                
                <?php
                    $usuario = new Usuarios();
                    
                    // Cadastro de Usuario
                    if ( isset($_POST[''''''''cadastrar'''''''']) ):
                        
                        $nome  = $_POST[''''''''nome''''''''];
                        $email = $_POST[''''''''email''''''''];
                        
                        $usuario->setNome($nome);
                        $usuario->setEmail($email);
                        
                        if ($usuario->insert()) {
                        
                        echo ''''''''<div class="alert alert-success alert-dismissible" role="alert">
  <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
  <strong>OK!</strong> Incluido com sucesso!!! </div>'''''''';
                        
                    } else {
                        echo ''''''''<div class="alert alert-success alert-dismissible" role="alert">
  <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
  <strong>OK!</strong> Erro ao alterar!!! </div>'''''''';
                    }
                    endif;
                    
                    
                    //exclusao de Usuario
                    if (isset($_POST[''''''''excluir_ui''''''''])){
                        
                        $id = $_POST[''''''''id_ui''''''''];
                        
                        $usuario->delete($id);
                        
                    }
                    
                    // Alterar Usuario
                    if ( isset($_POST[''''''''alterar'''''''']) ) {
                        $id    = $_POST[''''''''id_uii''''''''];
                        $nome  = $_POST[''''''''nome''''''''];
                        $email = $_POST[''''''''email''''''''];
                        
                        $usuario->setNome($nome);
                        $usuario->setEmail($email);
                        $usuario->update($id);
                        
                    }
                ?>
                

                <legend>Formulário Cadastrar</legend>
                <form class="form-inline" method="post">
                    <div class="input-group">
                        <span class="input-group-addon glyphicon glyphicon-user"></span>
                        <input name="nome" type="text" class="form-control" required >
                    </div>

                    <div class="input-group">
                        <span class="input-group-addon">@</span>
                        <input name="email" type="email" class="form-control">
                    </div>

                    <input name="cadastrar" type="submit" class="btn btn-success" value="Cadastrar">
                </form>
            </div>
            <!-- Fim form cadastrar -->

            <!-- Inicio da tabela -->
            <table class="table table-striped table-bordered table-hover">
                <thead>
                    <tr class="active">
                        <th>Nome</th>
                        <th>E-mail</th>
                    </tr>
                </thead>
                <tbody>
                    <?php foreach ($usuario->findAll() as $key => $value) { ?>
          
                    <tr>
                        <td> <?php echo $value->nome;?> </td>

                        <td> <?php echo $value->email;?> </td>

                        <td>

                            <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#myModal" onclick="load_modal(''''''''<?php echo $value->nome;?>'''''''', ''''''''<?php echo $value->email;?>'''''''', <?php echo $value->id;?>);">Alterar</button>
                            
                             <form class="form_excluir" method="post" style="float: left; margin: 0 15px;">
<input name="id_ui" type="hidden" value="<?php echo $value->id;?>"/><button name="excluir_ui" type="submit" onclick="fn_excluir();" class="btn btn-danger">Excluir</button></form> 
<!--Fernando C do forum descobriu erro no nome da função -->                                                               
                        </td>

                    </tr>
                    
                    <?php } ?>
                </tbody>
            </table>
            <!-- Fim da tabela -->

            <!-- Modal para alterar Usuário -->
            <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
                <div class="modal-dialog" role="document">
                    <div class="modal-content">
                        <div class="modal-header">
                            <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
                            <h4 class="modal-title" id="myModalLabel">Alterando Usuário</h4>
                        </div>
                        <div class="modal-body">
                            <form class="form-inline" method="post">
                                <div class="input-group">
                                    <span class="input-group-addon glyphicon glyphicon-user"></span>
                                    <input id="text_nome" name="nome" type="text" class="form-control" required value="" >
                                </div>

                                <div class="input-group">
                                    <span class="input-group-addon">@</span>
                                    <input id="text_email" name="email" type="email" class="form-control">
                                </div>
                                <input id="id_uii" name="id_uii" type="hidden" value=""/>
                                <input name="alterar" type="submit" class="btn btn-warning" value="Alterar">
                            </form>
                        </div>
       
Carlos Teixeira

Carlos Teixeira

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar