2016-09-29 12 views
0

私はアラビア語のウェブサイトを構築しています。ユーザーにアラブのユーザー名でログインさせたい私はMySQLとPHPを使用しています。問題は英語では動作しますが、アラビア語のユーザー名では動作しません。私はMySQLとPHPを使用したアラビア語ログインシステム。役に立たなかった

をより良く理解するためのコードを試してみてくださいutf8_general_ciするために、データベース、テーブルおよび列を設定している

<?php 

// Database info 
$host = 'localhost'; 
$user = 'root'; 
$pass = ''; 
$database = 'my_talent'; 

// Connect to database 
$connect = mysqli_connect($host, $user, $pass, $database); 

// Character set 
mysqli_query($connect, "SET NAMES 'utf8'"); 
mysqli_query($connect, 'SET CHARACTER SET utf8'); 

?> 
<!DOCTYPE> 
<html> 
<head> 
<title>Farris Website</title> 
</head>  
<body> 

<?php 

    $username = $_POST['username']; 

    $q = mysqli_query($connect, "SELECT * FROM users WHERE username = '{$username}'"); 

    if(mysqli_num_rows($q) > 0){ 
     echo 'Ok'; 
    }else{ 
     echo 'Not'; 
    } 

?> 

<form action="" method="POST"> 
    <input type="text" name="username" /> 
    <input type="submit" value="Submit" /> 
</form> 

は、ここに私のコードです。

+0

'$ username = htmlentities($ _ POST ['username']、ENT_QUOTES、" UTF-8 ");' – devpro

+0

また、[this](/ questions/1036454/what-are-the-diffrences -interf-utf8-general-ci-and-utf8-unicode-ci) – Tibrogargan

+0

@devproうまくいきませんでした。あなたのコンピュータでそれを試すことができますか? – FarrisFahad

答えて

0

私は私の質問への答えを発見したが...

私は必要なすべては、このような投稿値にがhtml_entity_decodeを追加することです:

$username = html_entity_decode($_POST['username']); 

自分のユーザー名を入力します。それでおしまい。今は素晴らしい作品です。

関連する問題