2

これは非常に基本的なことであり、そのような初歩的な質問をして申し訳ありません。

しかし、私はこのエラーを取得しています:

Warning: mysql_connect(): Access denied for user '‎‎u1'@'172.16.3.139' (using password: YES) in /usr/local/pem/vhosts/103503/webspace/httpdocs/eirestudio-tools/crm/add-contact.php on line 53 

ユーザーは‎‎u1 ?と言います。

これは何を意味するのでしょうか?

以下にサンプル接続を示します。ユーザーに注意してください。なぜ「-u1」が表示されるのでしょうか?

mysql_connect('localhost', '‎‎user', 'pass');
4

1 に答える 1

4

なぜ ‎‎u1 が表示されるのですか?

「u1」だけを期待していましたか?その文字列をどこから読んでいますか?

どうやら、構成ソースのどこかに目に見えない制御文字が含まれているようです。具体的には、Unicode U+200E LEFT-TO-RIGHT MARK を取得して UTF-8 にエンコードし、Windows-1252 コードページを使用して読み取ると、文字列 '‎' が得られます。

これは、ユーザー名 'u1' がテキスト ファイルから読み取られた場合に発生する可能性があります。プログラムはそれを cp1252 (Western マシンのデフォルトのコードページ) のバイトとして読み取る可能性がありますが、テキスト エディターはそれが UTF-8 であると推測し、それらを変換します。バイトを U+200E 文字に変換しますが、これは見ることができません。それらがどこから来たのかはわかりませんが、「u1」を含むソースを再入力/置換してそれらを取り除くことができます.

于 2009-09-21T17:12:23.780 に答える