2016-11-05 19 views
-2

私はWindows 10で、WAMPを使用しています。私は準備されたPDOステートメントでログインフォームを作成しようとしています。以下は、エラーを発行しているconnect.phpスクリプトのコードです: "接続に失敗しました:ドライバを見つけることができませんでした"。接続偽装:ドライバが見つかりませんでした

<?php 

$server = 'localhost'; 
$username = 'root'; 
$password = ''; 
$db = 'login'; 

try{ 
    $conn = new PDO("mysqli:host=$server;dbname=$db", $username, $password); 
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
    echo "Connected Successfully"; 
}catch(PDOException $e){ 
    echo "Connection falied: " . $e->getMessage(); 
} 
?> 

これはWAMPをのための "何のdllファイル" と言うん

extension=php_openssl.dll 
extension=php_pdo_firebird.dll 
extension=php_pdo_mysql.dll 
extension=php_pdo_oci.dll 
extension=php_pdo_odbc.dll 
extension=php_pdo_pgsql.dll 
extension=php_pdo_sqlite.dll 
extension=php_pdo_mysql.dll 
extension=php_pdo.dll 
extension=php_pdo_pgsql.dll 
extension=php_pdo_sqlite.dll 
extension=php_pgsql.dll 
;extension=php_shmop.dll 

を示し、PDOに関連付けられたDLLの私のphp.iniファイルからリストである: -php_mysqli -php_pdo

を私は "php_pdo" dllファイルをwamp/bin/php5.6.25 /とwamp/bin/php5.6.25/ext/inの場合に備えています。 php_mysqliのダウンロードが見つかりませんでしたが、私はPDOには必要ないと思いますが、誰かがダウンロードリンクを持っていればいいと思います。

私の質問は、ちょうど間違ったディレクトリにdllファイルをインストールしたのですか?私は何をすべきか分かりませんが、私はWAMPをインストールしたばかりでPDOは使えません。私は別のクライアントを使用すべきですか(私は彼らが何と呼ばれているかわかりません)。

+0

あなたはFireBirdのコメント 'インストール持っていけない場合、それはfbclient.dll'同様 – RiggsFolly

+0

はまた'コメントアウト '見つけることができない限り、それはエラーが生成されますよう拡張= php_pdo_firebird.dll'を、拡張子= php_pdo_ociあなたがOracleクライアントをインストールしていない場合は.dll'と同じ理由_ – RiggsFolly

答えて

0

私が代わりにmsqlimysqlを試してみてください、あなたはタイプミスがあると思う:

$conn = new PDO("mysql:host=$server;dbname=$db", $username, $password); 

もコメントから:

  1. はphp.iniでこれを置くようにしてください:のextension_dir =「C:\他のPDO拡張の前にphp_pdo.dllを移動し、WAMPを再起動してください。
+0

コマンドラインで 'php -m'を実行するとPDOのエントリが見えますか? –

+0

php.iniでこれを置くようにしてください: 'のextension_dir =「C:\ PHP5の\ extと」拡張 –

+0

に'とポイントそして、私はここにどこ編集に気づいWAMP –

1

編集:私はコミュニティのwikiになるように私の答えを変えることを決めました。さらに、質問は1つ以上のカウントのタイプミスです。


オリジナルの答え:

構文は次のとおりです。

  • mysql:host

ないmysqli。私はこれがあなたのオリジナルのポストごとに別の "タイプミス" ではないことを願うマニュアルを1としてnew PDO("msqli:host

$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); 

https://stackoverflow.com/revisions/40444027/1

  • ​​

注:WAMPをはに準備する必要があります「すぐに使用する」ことができ、ドライバーを追加する必要はありません。

私はWamp alsoとxamppを使用していますが問題はありませんでした。

プラス、WAMPをインストールには、異なる味(32ビットおよび64ビット)に来て、あなたは正しいものを選んだことを確認してください。

また、ここで助けになっていると思われる、またXAMPP

使用エラー報告をインストールしてみてくださいすることができます

+0

この回答は回答し、他の人にもタイプミスのオリジナルのポストの前に、右のバット 'mysqli'を目撃している必要があり、他の答えは、マークされていないの編集前に投稿されました。私は自分のPDOの構文を知っています。彼らが編集をする前に彼らが私の答えを見たのはここでかなり明白です。私はこれに関するポイントを気にしません、それは問題の原則です。さらに、私は言葉を口に入れても構いません。私が何を言ったのか、私がしたことは「言わない」ことを知っています。 –

関連する問題