PHP/MySQL のデータベース テーブルにラテン アクセント文字 (ã,õ,á,é,í、…) を送信する際の問題

PHP/MySQL のデータベース テーブルにラテン アクセント文字 (ã,õ,á,é,í、…) を送信する際の問題

mydatabase テーブルにラテン文字 (ã,õ,á,é,í、…) を表示する際に問題が発生しています。Apache 2.4.9 および MySQL 5.6.17 で WAMP サーバーを使用しています。

HTML で作成したシンプルなフォームと、クエリを実行してアカウントを作成する PHP コードがあります。PHP コードは次のとおりです。

include('config.php'); //My database data for connection

if(isset($_POST['submit'])) {
    $username = $_POST['username'];
    $password = $_POST['password'];
    $email = $_POST['email'];

    $query = "INSERT INTO account SET username = '".$username."', password = PASSWORD('".$password."'), email = '".$email."'";
    $execute_query = mysqli_query($connection, $query);
    if($execute_query) { 
        //Creates the account
    }
    else { 
        //If an error occures
    }
}

たとえば、次のようなアカウントを作成します。

Username: Luís
Password: 1234
E-mail: [email protected]

テーブルを確認すると、アカウントが作成されていることが示されていますが、ユーザー名はルイスの代わりにルイス

私が試したこと:

Creating a DataBase and Table with:
utf8_general_ci
utf8_unicode_ci
utf8mb4_general_ci
utf8mb4_unicode_ci
latin1_swedish_ci

どれもうまくいかなかった。いつもÃの代わりに

答え1

クエリ「SET NAMES utf8」の問題を修正しました。

include('config.php'); //My Database data for connection.
//Connection set with $connection = mysqli_connect($mysql_host, $mysql_user, $mysql_pass, $mysql_db)

if(isset($_POST['submit'])) {
    $username = $_POST['username'];
    $password = $_POST['password'];
    $email = $_POST['email'];

    $connection->query("SET NAMES utf8"); //FIXED (Gets $connection from config.php and runs the query "SET NAMES utf8")
    $query = "INSERT INTO account SET username = '".$username."', password = PASSWORD('".$password."'), email = '".$email."'";
    $execute_query = mysqli_query($connection, $query);
    if($execute_query) { 
        //Creates the account
    }
    else { 
        //If an error occures
    }
}

ありがとう@Giacomo1968 は回答で私を助けようとしてくれました結局のところ、データベース テーブルには問題はありませんでした。

私のデータベースとテーブルは と で設定されましCHARSET=utf8COLLATE=utf8_unicode_ci

関連情報