2012-05-12 8 views
0

私は、ログインページに私のCMSのための認証ファイルなどのコードを持っている:mcryptの/ MySQLの構文エラーが

//$login=true; 
    $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB); 
    $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND); 
    $key_hex = '6ee92bd4ef85c73b834cfa59ca343b7c'; 
    $key_bin = pack('H*', $key_hex); 
    $pas = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key_bin, $_SESSION['p'], MCRYPT_MODE_ECB, $iv); 
    $pas=trim($pas); 
    $query="select *,PASSWORD('{$pas}') as password, UNIX_TIMESTAMP() as now from adm where login='{$_SESSION['l']}' LIMIT 1"; 

これは、サーバのほとんどで素晴らしい作品が、Hostgatorの上でそれはdoesnのT:今のようにADMどこからログイン= '管理者': 'Á(E/EŃÇBňzŐO<〜îøq'Ńsč')hasloとして、UNIX_TIMESTAMP()/

クエリエラーが *、PASSWORD(選択しますLIMIT 1 構文に誤りがあります。obok 'Ńsč:Á(ě/Å')をパスワードとして使用します。 UNIX_TIMESTAMP()現在のadmからlogin = 'admin' LI '1行目 ログインエラー!これを修正する方法

1ce99313667de467 

*4ACFE3202A5FF5CF467898FC58AAB1D615029441 

の代わりに、このような:?私は、パスワードは次のように生成されている参照

+0

おそらくエンコードエラーですか?クエリを送信する前にこれらを実行してください:mysql_query( "SET NAMES utf8;"); mysql_query( "SET CHARACTER_SET utf8;"); – Ansari

+0

どこに追加すればよいですか? mysql.phpファイルがありますが、これを追加するとデータベースに接続できなくなります。 – Spacedust

+0

DBへの接続を確立した後にこれらを入れます。 – Ansari

答えて

0

問題はregister_globalsでした。それをオンにした後、すべてがうまくいった。